我正在做C中的一個項目,並且在構建它時遇到問題。它是:建築工程問題C
我在我的項目中有兩個單獨的子系統[A和B]使用另一個子系統[C]的功能。爲此,他們#包括必要的頭文件。其義務是兩個子系統[A和B]必須單獨構建,我的意思是我有兩個獨立的子系統的Makefile,我分別運行'make'。
現在,當我嘗試我的所有子系統[A,B,C]凝聚成一個單一的項目,GCC告訴一些功能已經聲明,這些功能都屬於子系統C.
我意識到,頭文件包含在編譯時,即當我在子系統[A和B]上使用'make'時。所以,當我試圖團結他們時,他們實際上被雙重宣佈。
有人可以幫我解決這個問題嗎?任何解決方案,不需要我將兩個子系統[A和B]編譯在一起將會很好。
很多可能的解釋。請發佈實際的錯誤消息以及導致問題的單個函數的聲明示例。 – 2009-12-06 12:42:21
感謝您的回覆。問題解決了。我在其中一個頭文件中聲明瞭一個靜態變量,在我得到的幾個警告中我沒有看到它。 – 2009-12-08 13:38:01