2011-07-30 22 views
1

我的程序編譯並鏈接時沒有錯誤。但是當我開始運行該程序時,它說在C++中執行期間的「未定義符號」

"undefined symbol: _ZN6Flexus11SharedTypes19FastBranchPredictor9combiningERKSsj" 

怎麼可能?如果有什麼模糊的地方,它不應該鏈接程序。

DeMangeled:

Flexus::SharedTypes::FastBranchPredictor::combining(std::string const&, unsigned int) 
+1

這是VC++還是g ++,是靜態鏈接還是動態鏈接的庫? – arunkumar

+0

我正在使用g ++。 – mahmood

+0

只有g ++有這個問題。 VC++沒有。 – Ajay

回答

2

我想你鏈接到不包含你想從它調用一個函數動態庫。編譯器和/或鏈接器無法檢測到錯誤,因爲您鏈接到庫運行庫

+1

感謝您的提示。我發現我沒有在make過程中包含我的文件。換句話說,在a.cpp中,我定義了一些東西,並在b.cpp中使用了它。但是我忘了在製作過程中加入'a'。只做進程'b'。 – mahmood