創建靜態庫(Linux)
- gcc -c hello.c 生成hello.o
- ar rcs libhello.a hello.o 創建靜態庫
靜態庫文件名的命名規範是以lib爲前綴,緊接着跟靜態庫名,擴展名爲.a
使用靜態庫
只需要在使用到這些公用函數的源程序中包含這些公用函數的原型聲明,然後在用gcc命令生成目標文件時指明靜態庫名,gcc將會從靜態庫中將公用函數連接到目標文件中。
在寫需要連接的庫時,只寫名字就可以,如libhello.a的庫,只寫: -lhello
gcc -o main main.c -L. -lhello
創建動態鏈接庫
1.gcc -dynamiclib -o hello.dylib hello.o
目錄下多了 hello.dylib,它就是創建的動態鏈接庫(.dylib是 MAC 系統下的,Windows 下是.dll, Linux 下是.so)
2.gcc -o main1 main.c -L. -lhello