GUN make (9) make的靜態庫文件

靜態庫文件也稱爲 文檔文件, 是由一些 .o 文件的集合。

在linux中使用工具 ar 對其進行維護管理。

 

1. 庫成員作爲目標

庫成員作爲目標時,使用如下格式:
ARCHIVE(MEMBER)     #表示庫ARCHIVE的成員MEMBER。

 

同時指定庫的多個成員:
foolib(hack.o dge.o)     #等價於   foolib(hack.o) foolib(dge.o)   

 

2. 靜態庫的更新

假如存在目標:   foo.a(bar.o)

執行 make ‘foo.a(bar.o)’      #需要加引號,不然shell 會將 ( ) 當做特殊符號處理。

運行如下命令:

cc -c bar.c -o bar.o    #生成成員bar.o 
ar r foo.a bar.o        #將成員bar.o加到foo.a庫中
rm -f bar.o             #刪除中間文件

 

3.靜態庫符號索引表的更新

當庫增加了成員之後,需要更新成員,否則增加的成員中所定義的所有符號將無法被連接程序定位。

ranlib ARCHIVEFILE       #對ARCHIVEFILE進行成員更新

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章