'bochs를 컴파일하는 동안 'pthread_create@@GLIBC_2.2.5' 기호에 대한 정의되지 않은 참조

'bochs를 컴파일하는 동안 'pthread_create@@GLIBC_2.2.5' 기호에 대한 정의되지 않은 참조

다음 명령으로 boch를 컴파일하려고 합니다.

./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: 우분투 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

관련 정보