0

centos6.0 final 64bit(g++ 4.4)でboost 1.51.0をコンパイルしました。コンパイル中にエラーはありません。しかし、libboost_thread.a を自分のプログラムにリンクしようとすると、 undefined reference toboost::thread::~thread()'` というリンク エラーが発生します。nm で libboost_thread.a のシンボルを一覧表示しようとしましたが、~thread という名前のシンボルはありません。

ubuntu12.04 32ビット(g ++ 4.6)でも同じことを行いましたが、うまく機能し、エラーなしで正常にリンクされました。

誰でも問題を知っていますか?

私はboost1.51.0の代わりにboost1.49.0を使用していますが、すべてうまくいきます。g++ 4.4 と boost1.51.0 に互換性の問題があると思います

4

1 に答える 1

0

boost :: thread ::〜thread()関数は1.51でインライン化されました。私の推測では、あなたは1.49でコンパイルし、1.51でリンクしていると思います。

于 2012-12-15T12:47:53.487 に答える