『壹』 新手:linux下使用第三方C庫(openssl),是調用.so文件還是直接調用.h文件
不管什麼庫文件,你都既要在包含.h文件(不然編譯通不過:有未聲明的函數),也要在gcc選項裡面指定.so文件的位置(不然鏈接通不過:未知的符號)
比如
gcc -I include_path -L lib_path -lyourlib
include_path改成你頭文件的目錄
lib_path改成你動態庫文件的目錄
-lyourlib 改成l加上你要引用的庫文件名字
比如libpthread.so就改成-lpthread
『貳』 關於 Linux c 的函數庫文件的 路徑問題
要學會用man,特別是man2(系統調用)和man3(C函數庫),比如:
mansqrt
會顯示需要引用的頭文件,編譯時需要的動態鏈接庫
如果重復,則需要指定手冊章節,比如
manwrite顯示的是write程序幫助,如果想看系統調用,則要輸入man2wirte
另外,/lib64:/lib:/usr/lib64:/usr/lib這些是系統預設的,不用指定
『叄』 Linux系統下的C代碼如何往單片機上移植(那些庫文件如何處理的)
Linux移植到arm上,主要有三大部分:
1)bootload部分,也就是引導程序設計,一般都有現成的移植程序,如Uboot
2)Linux內核,通過內核裁剪和arm-linux-gcc編譯後,
3)文件系統移植
內容還是很多,三言兩語無法解釋清楚,還是找個視頻看看吧
多高深的一門技術。怎麼可能在這上面幾句話學會嘛。。找點資料看看吧
『肆』 linux下,C語言頭文件在哪
一、 C標准庫頭文件,以及Linux的標准庫文件的對應頭文件,默認放在/usr/include下。 如圖:
標識出了最常用的幾個頭文件。
二、 自定義頭文件,或者集成頭文件,需要在編譯的時候指定。可以在命令行中指定,也可以在makefile中指定。
指定自定義頭文件路徑方式為:
-IPATH1 -IPATH2...
如當前目錄下的inc文件夾,指定為頭文件, 那麼在編譯a.c時,可以命令寫作:
gcc a.c -I./inc -o a.out