ros groovy compile fails at pcl
I am trying to compile ROS by source on an arch system. The compile process stucks a pcl. The result of cd ~/roscatkinws/buildisolated/pcl && ~/roscatkinws/installisolated/env.sh make -j8 -l8 is: common/CMakeFiles/pclcommon.dir/build.make:103: recipe for target 'common/CMakeFiles/pclcommon.dir/src/common.cpp.o' failed make[2]: *** [common/CMakeFiles/pclcommon.dir/src/common.cpp.o] Error 1 common/CMakeFiles/pclcommon.dir/build.make:149: recipe for target 'common/CMakeFiles/pclcommon.dir/src/distances.cpp.o' failed make[2]: *** [common/CMakeFiles/pclcommon.dir/src/distances.cpp.o] Error 1 common/CMakeFiles/pclcommon.dir/build.make:80: recipe for target 'common/CMakeFiles/pclcommon.dir/src/io.cpp.o' failed make[2]: *** [common/CMakeFiles/pclcommon.dir/src/io.cpp.o] Error 1 CMakeFiles/Makefile2:545: recipe for target 'common/CMakeFiles/pclcommon.dir/all' failed make[1]: *** [common/CMakeFiles/pclcommon.dir/all] Error 2 octree/CMakeFiles/pcloctree.dir/build.make:57: recipe for target 'octree/CMakeFiles/pcloctree.dir/src/octreeimpl.cpp.o' failed make[2]: *** [octree/CMakeFiles/pcloctree.dir/src/octreeimpl.cpp.o] Error 1 CMakeFiles/Makefile2:1083: recipe for target 'octree/CMakeFiles/pcloctree.dir/all' failed make[1]: *** [octree/CMakeFiles/pcloctree.dir/all] Error 2 [ 4%] Built target pclioply Makefile:126: recipe for target 'all' failed make: *** [all] Error 2
Any ideas?
Asked by mealejan on 2014-02-12 23:50:21 UTC
Answers
This looks like either a mismatch between the version of Eigen that's installed and the version of Eigen that pcl is expecting, or a bug in PCL.
I'm reasonably certain that the version of PCL that's packaged with Groovy works with Eigen 3.0.5 and 3.1.0.
Can you confirm that your version of Eigen is newer than 3.1.0 ?
Asked by ahendrix on 2014-02-13 00:43:45 UTC
Comments
I have the version eigen-3.2.0-1 installed
Asked by mealejan on 2014-02-13 00:51:57 UTC
Is this version to new?
Asked by mealejan on 2014-02-13 01:52:21 UTC
I suspect that eigen-3.2 is newer than pcl is expecting. It looks like Eigen has moved their sqrt function to the public API, so you may be able to fix this by modifying pcl's eigen.h header to call 'Eigen::sqrt' instead of 'Eigen::internal::sqrt'
Asked by ahendrix on 2014-02-13 09:09:19 UTC
I think the problem was caused by shiboken. But I found a package of my distribution (arch) pcl-ros which compiled without errors.
Asked by mealejan on 2014-02-18 07:26:53 UTC
Comments
can you run this again with VERBOSE=1 ?
Asked by ahendrix on 2014-02-12 23:53:06 UTC
You can find the output here
Asked by mealejan on 2014-02-12 23:59:08 UTC
This is very strange; the compiler is failing and exiting nonzero, but it isn't producing an error message. Can you try compiling one file by hand?
Asked by ahendrix on 2014-02-13 00:11:56 UTC
try running: https://gist.github.com/trainman419/7a3a62d79d4f139156c5
Asked by ahendrix on 2014-02-13 00:12:31 UTC
You can find the output here.
Asked by mealejan on 2014-02-13 00:20:37 UTC