庫是一種可執(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)注
87文章
11292瀏覽量
209326 -
靜態(tài)庫
+關(guān)注
關(guān)注
0文章
21瀏覽量
7426
發(fā)布評論請先 登錄
相關(guān)推薦
評論