/ usr / bin / ld: ../freeglut/libfreeglut_static.a(freeglut_state.o): неопределенная ссылка на символ 'XGetWindowAttributes' в модели Box2d - PullRequest
0 голосов
/ 30 мая 2018

Я следовал за этим , и он показал мне шаги для установки.
У меня уже установлены зависимости.
unzip Box2D_v2.1.2.zip cd Box2D_v2.1.2/Box2D/Build cmake .. make

На последнем шаге make я получилследующее сообщение.
/usr/bin/ld: ../freeglut/libfreeglut_static.a(freeglut_state.o): undefined reference to symbol 'XGetWindowAttributes' //usr/lib/x86_64-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status
Я искал в Интернете, все говорили, что нужно скомпилировать с флагом -X11, но это файл make, и я не особо понимаю, что

1 Ответ

0 голосов
/ 30 мая 2018

Пример сборки, box2d_2.3.1: старое программное обеспечение, используется «старый» компилятор ...

tar xvf box2d_2.3.1+ds.orig.tar.xz
cd box2d-2.3.1/Box2D/
mkdir build && cd build/
CC=gcc-5 CXX=g++-5 cmake -DBOX2D_INSTALL=ON -DBOX2D_BUILD_SHARED=ON -DBOX2D_BUILD_STATIC=ON -DBOX2D_BUILD_EXAMPLES=OFF ../
make
.
[100%] Linking CXX shared library libBox2D.so
[100%] Built target Box2D_shared

Ссылка, box2d_2.3.1 http://cdn -fastly.deb.debian.org/debian/pool/main/b/box2d/box2d_2.3.1+ds.orig.tar.xz

Примечание : Работает также с версией 2010 года Box2D_v2.1.2https://code.google.com/archive/p/box2d/downloads

...