我需要使用RoS将ogre编译为gazebo的依赖项。在链接过程中,我收到以下错误:
Linking CXX executable ../../bin/SampleBrowser
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../lib/libfreeimage.so: undefined reference to `TIFFReadEncodedStrip@LIBTIFF_4.0'
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../lib/libfreeimage.so: undefined reference to `TIFFReadEXIFDirectory@LIBTIFF_4.0'
...
这些错误似乎是由于缺少 libtiff5 引起的。即使在安装libtiff5,libtiff5-dev和libtiff4之后,libtiff4-dev也没有被链接器接收。我按源安装了libtiff 4.0.3,我认为我的系统现在非常混乱,总是需要错误的库版本。
ls /usr/lib/x86_64-linux-gnu | grep libtiff
给了我:
libtiff.a
libtiff.la
libtiff.so
libtiff.so.4
libtiff.so.4.3.6
libtiff.so.5
libtiff.so.5.2.0
libtiffxx.a
libtiffxx.la
libtiffxx.so
libtiffxx.so.0
libtiffxx.so.0.0.10
libtiffxx.so.5
libtiffxx.so.5.2.0
运行debian jessie x64。
答案 0 :(得分:0)
官方的Ogre3D依赖项(可以找到here)目前基于 FreeImage 3.15.3 ,内部基于 LibTIFF 4.0.1 。
使用这些版本可能会解决您的问题。