我想在Debian 8上構建ROS(機器人操作系統)Indigo。我在Oracle VirtualBox上運行Debian 8(64位PC netinst ISO,發現於https://www.debian.org/distrib/)。ROS-Indigo Collada安裝依賴於libpcrecpp包的DOM無法檢測到已安裝的libpcrecpp包
我這個指令集如下:http://wiki.ros.org/indigo/Installation/Debian
執行每條指令一步一步的,當我嘗試安裝collada-dom-dev
出現問題。
首先,當我做了cmake .
時,它給出了關於缺失依賴關係的幾個警告。我安裝每個。其中一個叫libpcrecpp
。我通過APT安裝它,它的名字顯然是libpcrecpp0
。所以我安裝它。
然後我執行cmake .
。它仍然無法找到libpcrecpp並給出了以下警告:
-- checking for module 'libpcrecpp'
-- package 'libpcrecpp' not found
-- System pcre not found, using local from sources
我想,好吧,讓我們嘗試不libpcrecpp反正安裝。我繼續做sudo checkinstall make install
。但是,構建失敗,給出此警告:
/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
因此,似乎很清楚,問題來自libpcrecpp。
由於認爲它們的名稱必須錯誤(因爲軟件包名稱實際上是libpcrecpp0),所以我將第224行上的CMakeLists.txt文件更改爲pkg_check_modules(libpcrecpp libpcrecpp)
至pkg_check_modules(libpcrecpp libpcrecpp0)
。但是,它仍然無法找到已安裝的libpcrecpp0軟件包,並且安裝失敗並出現相同的錯誤。
如何解決這個問題,以便我可以安裝ROS-Indigo的Collado DOM依賴項?