Gcc

如何在linux中創建和使用動態庫和靜態庫(c程式)?

  • April 13, 2019

如何創建和使用動態和靜態庫?

誰能在這里以一種簡單的方式解釋如何在靜態庫和動態庫中創建和使用動態庫c和靜態庫?還請告訴我為什麼使用gcc -cand gcc -o。我知道gcc是一個編譯器,但是-c-o. 這個目的是什麼?

由於您不知道-c(編譯目標文件)和-o(指定輸出文件)做什麼,我建議從簡單的可執行編譯開始。了解什麼是目標文件以及它們是如何組合在一起的。

繼續使用靜態庫。了解靜態庫只是一起歸檔的幾個目標文件。它們如何指定給編譯器以及編譯器如何找到它們。

然後,最後,嘗試動態的。了解它們在執行時連結。您需要指定它們的位置。它們以不同的方式編譯和連結(你見過-fPIC嗎?)。他們可以相互依賴。它們是可以輕鬆咬你的強大野獸:)

以及創建靜態和動態庫的*簡單方法?*忘記手動編寫它們並使用 cmake。如果您想深入了解,請執行 make with VERBOSE=1,查看編譯器參數並學習。

引用自:https://unix.stackexchange.com/questions/245918