小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

LInux中動態(tài)庫和靜態(tài)庫的制作和使用

 驛落黃昏525 2012-04-16

Linux中有兩類函數(shù)庫,動態(tài)庫和靜態(tài)庫
靜態(tài)庫:
 這類庫一般都是以.a為后綴名的文件,利用靜態(tài)庫函數(shù)編譯成的文件比較大,因為整個函數(shù)庫的所有數(shù)據(jù)都會被整合進目標(biāo)代碼中。
編譯后的執(zhí)行程序就不需要外部的函數(shù)庫支持,但也有其缺點,就是一旦靜態(tài)函數(shù)庫改變了,那么程序就必須重新編譯。
動態(tài)庫:
 這類庫的一般都是以.so為后綴名的,相對于靜態(tài)庫函數(shù)庫來說,動態(tài)函數(shù)庫在編譯的時候并沒有被編譯進目標(biāo)代碼中。當(dāng)程序執(zhí)行到相關(guān)函數(shù)時才調(diào)用該函數(shù)庫里的
相應(yīng)函數(shù),因此動態(tài)庫函數(shù)庫所產(chǎn)生的可執(zhí)行文件比較小,由于函數(shù)庫沒有被整合到程序之中,所以這也就少了靜態(tài)庫鎖有的缺點。

Linux系統(tǒng)中的系統(tǒng)缺省庫有/lib    /usr/lib      /usr/local/lib

不管是何種庫文件,都是由.o文件生成的。
下面我就來講解下著兩種庫的生成方法及步驟:

動態(tài)庫:
 對咬編譯生成庫的文件執(zhí)行下面命令即可:
 #gcc -shared funName.c -o libLibName.so
靜態(tài)庫:
 #gcc -c funName.c
 #ar cr libLibName.a funName.o
 輕重funName.o是第一步生成的文件

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多