https://blog.csdn.net/surgewong/article/details/39236707函數
看這一篇博文足夠了!!!.net
注意:blog
一、連接過程當中可能出現多種連接方式,須要使用一些參數來指定(參數都是-XXX形式的);get
二、連接過程當中同一個庫(名稱相同)的靜態和動態兩種連接庫,在連接過程當中,系統優先選擇動態連接庫;變量
三、動態連接庫路徑,系統默認在/usr/lib和/usr/local/lib兩個庫目錄搜索,本身定義的庫須要格外指定路徑(設定變量LD_LIBRARY_PATH)或者將其拷貝到這兩個目錄下。固然能夠將當前路徑添加到/etc/ld.so.conf文件中或者/etc/ld/so.conf.d目錄下的一個文件中。搜索
四、查看動態連接庫。有時候可能須要查看一個庫中到底有哪些函數,nm命令能夠打印出庫中的涉及到的全部符號。庫既能夠是靜態的也能夠是動態的。nm列出的符號有不少,常見的有三種:程序
一種是在庫中被調用,但並無在庫中定義(代表須要其餘庫支持),用U表示;文件
一種在庫中定義的函數,用T表示,這是最多見的;co
另外一種所謂的「弱態」符號,它們雖然在庫中定義,但可能被其餘庫中的同名符號覆蓋,用W表示。ps
五、使用ldd命令能夠查看程序的庫依賴