I am trying to build ROS (Robot Operating System) Indigo on Debian 8. I’m running Debian 8 on Oracle VirtualBox (the 64-bit PC netinst ISO, found at https://www.debian.org/distrib/).
I am following this set of instructions: http://wiki.ros.org/indigo/Installation/Debian
Performing each instruction step-by-step, a problem arises when I attempt to install collada-dom-dev
.
First, when I did cmake .
, it gives several warnings about missing dependencies. I install each. One of them is called libpcrecpp
. I install this through APT, and its name is apparently libpcrecpp0
. So I install that.
Then I execute cmake .
. It still is unable to find libpcrecpp and gives the following warning:
-- checking for module 'libpcrecpp' -- package 'libpcrecpp' not found -- System pcre not found, using local from sources
I think, well let’s try installing anyway without libpcrecpp. I go ahead to do sudo checkinstall make install
. However, the build fails, giving this warning:
/usr/bin/ld: external-libs/pcre-8.02/libpcre_local.a(pcre_compile.c.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC external-libs/pcre-8.02/libpcre_local.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status dom/CMakeFiles/collada-dom.dir/build.make:893: recipe for target 'dom/libcollada-dom2.4-dp.so.2.4.0' failed
So it seems clear that the problem comes from libpcrecpp.
Thinking that they must have got the name wrong (since the package name is actually libpcrecpp0), I change the CMakeLists.txt file on line 224: pkg_check_modules(libpcrecpp libpcrecpp)
to pkg_check_modules(libpcrecpp libpcrecpp0)
. However, it still fails to find the installed libpcrecpp0 package, and installation fails with the same error.
How do I resolve this so that I can install Collado DOM dependency for ROS-Indigo?
Advertisement
Answer
After further searching, I found that the libpcrecpp
library is mis-named. The real name of the library is libpcre3-dev
.
To resolve this issue, simply install that library through sudo apt-get install libpcre3-dev
.