我有一個程序在編譯時使用-L(mylib.a)(使用eclipse cdt)靜態鏈接到Linux中的另一個庫。C++ linux中的靜態鏈接用法:每次更改庫時是否需要重新編譯所有內容?
對我的理解,鏈接是靜態的這一事實意味着庫被插入到我的二進制文件中。這是否意味着如果我對mylib進行更改,我需要重新編譯我的二進制文件? 我是這麼認爲的,但是我想確定一下,因爲它在時間上是一個很大的開銷。請注意,如果對mylib進行了更改,那麼eclipse意識到它需要重新編譯,但它不能識別二進制本身需要重新編譯,即使它鏈接到mylib。
鏈接不是編譯的一部分,儘管它通常也是用編譯器命令完成的。 – leftaroundabout 2012-03-21 09:46:55
@leftaroundabout:我確定知道編譯和鏈接是兩個獨立和不同的過程。當然,兩者都可以單獨從命令行完成,但我不認爲它們可以在日食中單獨完成,其中OP使用&因此是答案。 – 2012-03-21 09:48:38
也許「重建」比「重新編譯」更少爭議。 – juanchopanza 2012-03-21 09:55:09