2011-07-30 9 views
1

私のプログラムはエラーなしでコンパイルとリンクを行います。しかし、プログラムを起動すると、C++での実行中に「未定義シンボル」

"undefined symbol: _ZN6Flexus11SharedTypes19FastBranchPredictor9combiningERKSsj" 

どのように可能ですか?あいまいなものがあれば、それはプログラムをリンクすべきではありません。

はDeMangeled:

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

このライブラリは静的にリンクされているか、動的にリンクされていますか? – arunkumar

+0

私はg ++を使用しています。 – mahmood

+0

g ++にのみこの問題があります。 VC++ doesnt。 – Ajay

答えて

2

私はあなたがそれから呼び出すしようとしている機能が含まれていないダイナミックライブラリにリンクしていると思います。ライブラリランタイムにリンクしているため、コンパイラおよび/またはリンカはエラーを検出できません

+1

チップのおかげで。私はmakeプロセスに自分のファイルを含めなかったことが分かりました。別の言葉では、a.cppでは、私は何かを定義し、b.cppではそれを使用しました。しかし、私はmakeプロセスに 'a'を含めるのを忘れていました。プロセス 'b'だけを作る。 – mahmood

関連する問題