«неопределенная ссылка на символ «pthread_create@@GLIBC_2.2.5» при компиляции bochs

«неопределенная ссылка на символ «pthread_create@@GLIBC_2.2.5» при компиляции bochs

Я пытаюсь скомпилировать 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

Вам необходимо добавить -lpthreadв Makefile в разделе LIBS

решение2

Проблема возникает при настройке сборки Bochs с помощью --enable-debuggerи, по-видимому, является ошибкой в ​​автоматической настройке сборки Bochs, из-за которой он неправильно исключает -pthreadфлаги компоновщика на платформах Linux.

Нет необходимости редактировать, Makefileкак предложено в предыдущем ответе. Вместо этого, обходной путь заключается в указании LDFLAGS='-pthread'при настройке сборки; например:

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

Я подалОтчет об ошибке № 1364с проектом Bochs. Пожалуйста, отпишитесь там, чтобы разработчики заметили и исправили эту ошибку.

решение3

ОС: 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

Связанный контент