bochs のコンパイル中に、シンボル 'pthread_create@@GLIBC_2.2.5' への未定義の参照が検出されました

bochs のコンパイル中に、シンボル 'pthread_create@@GLIBC_2.2.5' への未定義の参照が検出されました

次のコマンドで bochs をコンパイルしようとしています:

./configure --with-x11 --with-wx --enable-ne2000 --enable-iodebug --enable-disasm --enable-debugger --enable-e1000 --enable-usb --enable-pci

動作しますが、make を実行すると次のようになります:

usr/bin/ld: gui/libgui.a(gtk_enh_dbg_osdep.o): undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
/lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line

何か助けて頂けませんか?:/

答え1

-lpthreadLIBSの下のMakefileに追加する必要があります

答え2

この問題は、 を使用して Bochs ビルドを構成するときに発生し、 Linux プラットフォーム上のリンカー フラグから--enable-debugger誤って省略される Bochs の自動ビルド構成のバグであると思われます。-pthread

前の回答で提案されているように編集する必要はありませんMakefile。むしろ、回避策としては、ビルドを構成するときに指定しますLDFLAGS='-pthread'。例:

./configure --enable-debugger LDFLAGS='-pthread'

私は申請しましたバグレポート #1364Bochs プロジェクトで。開発者がこのバグに気づいて修正するように、ぜひ参加してください。

答え3

OS: Ubuntu 14.04 LTS

sudo apt-get install libgtk2.0-dev
tar vxzf bochs-2.4.5.tar.gz
cd bochs-2.4.5
sudo ./configure --enable-debugger --enable-disasm LDFLAGS='-pthread'
make
sudo make install

関連情報