Linux 靜態庫生成及呼叫

2021-10-10 22:13:32 字數 907 閱讀 7255

編寫乙個測試原始檔tom.c,再編寫makefile,make過程分為兩步, 第一步生成.o檔案,第二步通過ar生成靜態庫。

為了讓使用者知道我們的動態庫中有哪些介面可用,我們需要編寫對應的標頭檔案。

如果同一目錄下同時存在同名的動態庫和靜態庫,比如 libmax.so 和 libmax.a 都在當前路徑下,則gcc會優先鏈結動態庫。

建立乙個使用tom_add函式的test.c,makefile中的gcc -o $@ $< -l ./ -ltom生成a.out,其中-ltom表示要鏈結libmax.a。-l.表示搜尋要鏈結的庫檔案時包含當前路徑。

直接執行 ./a.out 。

把makefile中的gcc更換成移遠的交叉編譯工具鏈arm-oe-linux-gnueabi-gcc

openinit後make生成libtom.a

再make test生成a.out

將a.out拷入k18中,執行./a.out

Linux 靜態庫與動態庫的生成及呼叫

一,庫 一種可執行 的二進位制形式,可以被載入記憶體執行。其中庫分為靜態庫 動態庫 二,靜態庫和動態庫的區別 1 linux 下靜態庫 名字一般為 lib a利用靜態函式庫編譯成的檔案比較大,因為整個 函式庫的所有資料都會被整合進目標 中,他的優點就顯而易見了,即編譯後的執行程式不需要外部的函式庫支...

靜態庫 a和動態庫 so生成及呼叫

gcc編譯器工具一般位於 usr bin或者 usr local bin目錄,但它會從其它位置執行各種編譯器支援的應用程式,這個位置可能是 usr lib gcc lib 目錄,gnu c c 編譯器的各個工具和gnu專用標頭檔案都儲存在這裡。標頭檔案,一般位於 usr include,包含標頭檔案...

Linux 靜態庫生成

linux上的靜態庫,其實是目標檔案的歸檔檔案。在linux上建立靜態庫的步驟如下 寫原始檔,通過gcc c c生成目標檔案。用ar歸檔目標檔案,生成靜態庫。配合靜態庫,寫乙個使用靜態庫中函式的標頭檔案。使用靜態庫時,在原始碼中包含對應的標頭檔案,鏈結時記得鏈結自己的庫。下面通過例項具體講解。第乙個...