庫是一種可執(zhí)行的二進(jìn)制文件,是編譯好的代碼。使用庫可以提高開發(fā)效率。在 Linux 下有靜態(tài)庫和動(dòng)態(tài)庫。
靜態(tài)庫在程序編譯的時(shí)候會(huì)被鏈接到目標(biāo)代碼里面。所以程序在運(yùn)行的時(shí)候不再需要靜態(tài)庫了。因此編譯出來的體積就比較大。以 lib 開頭,以.a 結(jié)尾。
動(dòng)態(tài)庫(動(dòng)態(tài)庫也叫共享庫)在程序編譯的時(shí)候不會(huì)被鏈接到目標(biāo)代碼里面,而是在程序運(yùn)行的時(shí)候被載入的。所以程序在運(yùn)行的時(shí)候需要?jiǎng)討B(tài)庫了。因此編譯出來的體積就比較小。以 lib 開頭,以.so 結(jié)尾。
靜態(tài)庫的制作步驟:
編寫或準(zhǔn)備庫的源代碼
將源碼.c 文件編譯生成.o 文件
使用 ar 命令創(chuàng)建靜態(tài)庫
測試庫文件
動(dòng)態(tài)庫制作步驟:
編寫或準(zhǔn)備庫的源代碼
將源碼.c 文件編譯生成.o 文件
使用 gcc 命令創(chuàng)建動(dòng)態(tài)庫
測試庫文件
-
Linux
+關(guān)注
關(guān)注
88文章
11758瀏覽量
219006 -
靜態(tài)庫
+關(guān)注
關(guān)注
0文章
21瀏覽量
7771
發(fā)布評論請先 登錄
動(dòng)態(tài)庫和靜態(tài)庫的區(qū)別
Linux下動(dòng)態(tài)庫和靜態(tài)庫的制作及使用
Linux下靜態(tài)庫和動(dòng)態(tài)庫的制作與使用
應(yīng)用程序所依賴的動(dòng)態(tài)庫和靜態(tài)庫沒有調(diào)試信息的原因
靜態(tài)庫與動(dòng)態(tài)庫的相關(guān)知識
靜態(tài)庫和動(dòng)態(tài)庫的使用
Linux下靜態(tài)庫和動(dòng)態(tài)庫(共享庫)的制作與使用
講解Linux虛擬機(jī)之使用動(dòng)態(tài)庫和靜態(tài)庫
嵌入式Linux下動(dòng)態(tài)庫和靜態(tài)庫使用
Linux下動(dòng)態(tài)庫和靜態(tài)庫制作與調(diào)用
談一下動(dòng)態(tài)庫的構(gòu)建
動(dòng)態(tài)庫和靜態(tài)庫的制作步驟
評論