GCC編譯靜態庫及動態庫 原

將文件編譯爲靜態庫.a

# 將cJSON.c編譯爲cJSON.o, -c只編譯不連接
➜ gcc -c cJSON.c 

# 組合爲靜態鏈接庫. 使用cJSON.o創建靜態庫libcJSON.a
➜ ar -r libcJSON.a cJSON.o 

# 將靜態庫作爲一個系統共享的靜態鏈接庫(lib文件夾)
➜ cp libcJSON.a /usr/local/lib

# 此時就可以使用 -l 參數去使用靜態庫了.
➜ gcc main.c -o main -lcJSON 

將文件編譯爲動態鏈接庫.so

# 編譯動態鏈接庫
# # -fPIC: Position-Independent Code 生成位置無關的代碼
➜ gcc -fPIC -shared -o main.so main.c
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章