2011-07-30 20 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