我有一個基於C++的項目(許多源文件)使用gnu make通過makefile編譯。 我有一個鏈接庫的應用程序,說mylib。現在mylib由其他開發人員擁有。我看到存在於路徑2個文件,其中的二進制庫生成即 libmylib.so(共享對象)和libmylib.a添加(靜態庫歸檔文件)它會鏈接什麼庫 - 靜態或共享對象
我的應用程序生成文件下面有鏈接器選項鍊接庫MYLIB
LDFLAGS + = - 1:MYLIB ...
的問題是庫MYLIB的是什麼版本將在我的應用程序的可執行
鏈接將在共享對象libmylib.so或靜態版本libmylib.a添加?
如何決定,是否有任何其他makefile選項來管理?
我認爲這取決於平臺/編譯器,但除非指定了「-static」,否則IIRC'gcc'默認爲動態。 – 2013-02-06 14:22:32