Package: crrcsim
Version: 0.9.12-4
Severity: normal
Tags: upstream patch
User: peter.fritzs...@gmx.de
Usertags: no-add-needed

crrcsim fails to build with --no-copy-dt-needed-entries linker setting.
Logs can be found at https://launchpad.net/ubuntu/+source/crrcsim/0.9.12-4

/usr/bin/g++   -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat 
-Werror=format-security -D_FORTIFY_SOURCE=2   -Wl,-Bsymbolic-functions 
-Wl,-z,relro CMakeFiles/crrcsim.dir/src/aircraft.cpp.o 
CMakeFiles/crrcsim.dir/src/config.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_fdm.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_keyboard.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_loadair.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_main.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_sound.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_soundserver.cpp.o 
CMakeFiles/crrcsim.dir/src/crrc_system.cpp.o 
CMakeFiles/crrcsim.dir/src/CTime.cpp.o CMakeFiles/crrcsim.dir/src/global.cpp.o 
CMakeFiles/crrcsim.dir/src/ImageLoaderTGA.cpp.o 
CMakeFiles/crrcsim.dir/src/mouse_kbd.cpp.o 
CMakeFiles/crrcsim.dir/src/record.cpp.o CMakeFiles/crrcsim.dir/src/robots.cpp.o 
CMakeFiles/crrcsim.dir/src/SimStateHandler.cpp.o 
CMakeFiles/crrcsim.dir/src/zoom.cpp.o  -o crrcsim -rdynamic src/GUI/libGUI.a 
src/mod_cntrl/libmod_cntrl.a src/mod_env/libmod_env.a sr
 c/mod_fdm/libmod_fdm.a src/mod_inputdev/libmod_inputdev.a 
src/mod_video/libmod_video.a src/mod_landscape/libmod_landscape.a 
src/mod_main/libmod_main.a src/mod_math/libmod_math.a 
src/mod_misc/libmod_misc.a src/mod_mode/libmod_mode.a 
src/mod_robots/libmod_robots.a src/mod_windfield/libmod_windfield.a 
src/mod_chardevice/libmod_chardevice.a -Wl,-Bstatic -lSDLmain -Wl,-Bdynamic 
-lSDL -lpthread -lGL -lGLU -lportaudio -lCGAL -ljpeg -lplibssg -lplibsg 
-lplibpuaux -lplibpu -lplibul -lplibfnt -lboost_thread-mt -lpthread 
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:51: undefined reference to `__gmpq_init'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function 
`CGAL::Gmpq::operator+=(CGAL::Gmpq const&)':
/usr/include/CGAL/GMP/Gmpq_type.h:277: undefined reference to `__gmpq_add'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:51: undefined reference to `__gmpq_init'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function 
`CGAL::Gmpq::operator-=(CGAL::Gmpq const&)':
/usr/include/CGAL/GMP/Gmpq_type.h:287: undefined reference to `__gmpq_sub'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:51: undefined reference to `__gmpq_init'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function 
`CGAL::Gmpq::operator*=(CGAL::Gmpq const&)':
/usr/include/CGAL/GMP/Gmpq_type.h:297: undefined reference to `__gmpq_mul'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:51: undefined reference to `__gmpq_init'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function 
`CGAL::Gmpq::Gmpq(double)':
/usr/include/CGAL/GMP/Gmpq_type.h:133: undefined reference to `__gmpq_set_d'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function 
`CGAL::Gmpq::operator<(CGAL::Gmpq const&) const':
/usr/include/CGAL/GMP/Gmpq_type.h:195: undefined reference to `__gmpq_cmp'
/usr/include/CGAL/GMP/Gmpq_type.h:195: undefined reference to `__gmpq_cmp'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o): In function `~Gmpq_rep':
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
/usr/include/CGAL/GMP/Gmpq_type.h:52: undefined reference to `__gmpq_clear'
src/mod_landscape/libmod_landscape.a(winddata3D.cpp.o):/usr/include/CGAL/GMP/Gmpq_type.h:52:
 more undefined references to `__gmpq_clear' follow
collect2: error: ld returned 1 exit status
make[3]: *** [crrcsim] Error 1

See also
http://wiki.debian.org/ToolChain/DSOLinking#Not_resolving_symbols_in_indirect_dependent_shared_libraries

The attached patch was used in Ubuntu to fix the problem.
https://launchpad.net/ubuntu/+source/crrcsim/0.9.12-4ubuntu1

-- System Information:
Debian Release: wheezy/sid
  APT prefers quantal-updates
  APT policy: (500, 'quantal-updates'), (500, 'quantal-security'), (500, 
'quantal-proposed'), (500, 'quantal'), (100, 'quantal-backports')
Architecture: i386 (i686)

Kernel: Linux 3.5.0-18-generic (SMP w/2 CPU cores)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Description: fix FTBFS because of missing library
Author: Ilya Barygin <randomact...@ubuntu.com>

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -253,6 +253,7 @@
   ${JPEG_LIBRARIES}
   ${PLIB_LIBRARIES}
   ${Boost_LIBRARIES}
+  gmp
   )
 
 include_directories(${CRRCSIM_INCDIRS})

Reply via email to