(1)第一步:自己製作靜態鏈結庫
首先使用gcc -c只編譯不鏈結,生成.o檔案;然後使用ar工具進行打包成.a的歸檔檔案。庫名不能隨便亂起,一般是lib+庫名稱,字尾名是.a表示是乙個歸檔檔案
注意:製作出來了靜態庫之後,發布時需要發布.a檔案和.**件
//makefile:
all:
gcc pointer8.c -o pointer8.o -c
ar -rc libpointer8.a pointer8.o
(2)第二步:使用靜態鏈結庫
把.a和.h都放在我引用的資料夾下,然後在.c檔案中包含庫的.h,然後直接使用庫中的函式。
第一次編譯方法:gcc test.c -o test
報錯資訊:test.c:(.text+0x9): undefined reference tofunc1' test.c:(.text+0x18): undefined ref
製作靜態庫和動態庫
製作靜態庫的方法 1 把 編譯為目標檔案形式 gcc c liberr.c o liberr.o 2 使用工具ar建立乙個存檔檔案 ar rcs liberr.a liberr.o gcc errtest.c o errtest static l.lerr 製作動態庫的方法 1 首先編譯目標檔案 g...
靜態庫和動態庫製作
1.什麼是庫檔案?儲存函式和變數 倉庫 特點 儲存的函式變數只能使用但不能看到其它實現。靜態庫 a 在編譯階段載入 將庫檔案 載入到原始檔 動態庫 so 在執行時載入。2.生成的可執行檔案存在的區別 優缺點 1 使用靜態庫生成的可執行檔案大於動態庫 程式執行占用記憶體較多 2 使用靜態庫生成的可執行...
靜態庫和動態庫的製作
在現實工作中,要實現 的共享但又不想讓別人知道自己的源 那我們該怎麼做呢?我們可以利用動態庫來保護自己寫的源 不被別人竊取。lib目錄檔案 makefile cc gcc 用ar命令對目標檔案歸檔 格式為ar rcs 生成靜態庫檔案 libtest.a myalib.o ar rcs libtest...