繼續linux學習3的內容:
• 列印頭檔案
– include 呼叫列印函式printf
• 應用中呼叫檔案需要的標頭檔案
– #include 基本系統資料型別。系統的基本資料型別在 32 編譯環境中保持為 32 位值,並會在 64 編譯環境中增長為 64 位值。
– #include 系統呼叫函式標頭檔案。可以呼叫普通檔案,目錄,管道,socket,字元,塊的屬性
- #include 定義了open函式,open函式是返回檔案描述符,會返回乙個控制代碼,後面的操作都用到這個
- #include 定義了close函式close函式是關閉開啟的檔案
- #include 定義了ioctl函式;ioctl函式是應用向驅動傳值
•呼叫的標頭檔案是和編譯器放在一起的
– 這裡使用arm2009q3編譯器,編譯器使用 arm-none-linux-gnueabi-gcc
• 在編譯器目錄下使用查詢命令找到該標頭檔案
– 例如 #find ./ -name types.h
• 編寫應用程式的**,編譯
– arm-none-linux-gnueabi-gcc -o invoke_hello invoke_hello.c -static
編寫檔案呼叫《linux學習3-...》中 devicenode_linux_module驅動,執行應用
① 編寫**如下
主要函式open()、close()
#include #include //系統呼叫函式標頭檔案
#include #include #include main()
else
close(fd);
}
② 在ubuntu中編譯檔案
arm-none-linux-gnueabi-gcc -o invoke_hello invoke_hello.c -static③拷貝到u盤,在板子上執行
mount /dev/sda1 /mnt/usb_disk成功後,即可使用 u 盤了, 檔案就在目錄 /mnt/usb_disk 下。執行程式之前先載入下模組 insmod修改一下檔案許可權
chmod 777 /mnt/usb_disk/
簡單呼叫元件4
1 啟動元件得到乙個介面指標 inte ce 後,不要呼叫addref 因為系統知道你得到了乙個指標,所以它已 經幫你呼叫了addref 函式 2 通過queryinte ce 得到另乙個介面指標後,不要呼叫addref 因為.和上面的道理一樣 3 當你把介面指標賦值給 儲存到 另乙個變數中的時候,...
linux 簡單呼叫so庫
1 動態庫生成 gcc fpic shared cat.c o libcat.so o是要生成的檔案的名稱 2 編譯指令直接鏈結呼叫 gcc main.c l.lcat o test l.表示鏈結的動態庫在本地資料夾 執行可執行檔案時,需要新增本地目錄到lib目錄,否則會報 cannot open ...
WCF學習筆記(二) 簡單呼叫
乙個通訊會話過程有兩個部分組成,客戶端和服務端,他們要進行會話就必然有共同的語言約定,在wcf中這稱為契約 contract 定義好通訊的約定後,服務端需要確定服務的具體內容,即為配置 執行服務 開放終結點。客戶端描述如何從 wcf 服務檢索用於建立 wcf 客戶端的元資料。using system...