0
$\begingroup$

Rosanswers logo

Hi,

I'm trying to install orocos toolchain and rtt-ros-integration following the instruction here github.com/orocos/rtt_ros_integration

On Ubuntu 14.04, it seems totally no problem.

But on my Gentoo (no X), orocos toolchain seems no problem for catkin_make_isolated. But when catkin_make rtt-ros-integration, I got the following errors. I have disabled LUA for both platform. Ruby version: on Ubuntu ruby 1.9.3p484 , on Gentoo ruby 2.0.0p645 . env |grep ROS and env |grep RTT show the same results.

Can anyone help me to figure out what is the problem on my Gentoo Linux?

Thanks

brian-fulin ws_catkin # catkin_make
Base path: /home/vms/ws_catkin
Source space: /home/vms/ws_catkin/src
Build space: /home/vms/ws_catkin/build
Devel space: /home/vms/ws_catkin/devel
Install space: /home/vms/ws_catkin/install
####
#### Running command: "make cmake_check_build_system" in "/home/vms/ws_catkin/build"
####
####
#### Running command: "make -j2 -l2" in "/home/vms/ws_catkin/build"
####
[  0%] Built target dlv_peripherals
Linking CXX shared library /home/vms/ws_catkin/devel/lib/librtt_ros-gnulinux.so
c++: error: defining: No such file or directory
c++: error: another: No such file or directory
c++: error: variable: No such file or directory
c++: error: in: No such file or directory
c++: error: terms: No such file or directory
c++: error: of: No such file or directory
c++: error: the: No such file or directory
c++: error: first/lib: No such file or directory
c++: error: #: No such file or directory
c++: error: If: No such file or directory
c++: error: some: No such file or directory
c++: error: RTT: No such file or directory
c++: error: headers: No such file or directory
c++: error: include: No such file or directory
c++: error: inline: No such file or directory
c++: error: calls: No such file or directory
c++: error: other: No such file or directory
c++: error: libraries,: No such file or directory
c++: error: we: No such file or directory
c++: error: need: No such file or directory
c++: error: to: No such file or directory
c++: error: specify: No such file or directory
c++: error: these: No such file or directory
c++: error: here: No such file or directory
c++: error: too.: No such file or directory
target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt_ros.dir/build.make:114: recipe for target '/home/vms/ws_catkin/devel/lib/librtt_ros-gnulinux.so' failed
make[2]: *** [/home/vms/ws_catkin/devel/lib/librtt_ros-gnulinux.so] Error 1
CMakeFiles/Makefile2:505: recipe for target 'target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt_ros.dir/all' failed
make[1]: *** [target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt_ros.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX shared library /home/vms/ws_catkin/devel/lib/orocos/gnulinux/rtt_ros/types/librtt-ros-primitives-typekit-gnulinux.so
c++: error: defining: No such file or directory
c++: error: another: No such file or directory
c++: error: variable: No such file or directory
c++: error: in: No such file or directory
c++: error: terms: No such file or directory
c++: error: of: No such file or directory
c++: error: the: No such file or directory
c++: error: first/lib: No such file or directory
c++: error: #: No such file or directory
c++: error: If: No such file or directory
c++: error: some: No such file or directory
c++: error: RTT: No such file or directory
c++: error: headers: No such file or directory
c++: error: include: No such file or directory
c++: error: inline: No such file or directory
c++: error: calls: No such file or directory
c++: error: other: No such file or directory
c++: error: libraries,: No such file or directory
c++: error: we: No such file or directory
c++: error: need: No such file or directory
c++: error: to: No such file or directory
c++: error: specify: No such file or directory
c++: error: these: No such file or directory
c++: error: here: No such file or directory
c++: error: too.: No such file or directory
target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt-ros-primitives-typekit.dir/build.make:413: recipe for target '/home/vms/ws_catkin/devel/lib/orocos/gnulinux/rtt_ros/types/librtt-ros-primitives-typekit-gnulinux.so' failed
make[2]: *** [/home/vms/ws_catkin/devel/lib/orocos/gnulinux/rtt_ros/types/librtt-ros-primitives-typekit-gnulinux.so] Error 1
CMakeFiles/Makefile2:470: recipe for target 'target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt-ros-primitives-typekit.dir/all' failed
make[1]: *** [target/ros_pkg/rtt_ros_integration/rtt_ros/CMakeFiles/rtt-ros-primitives-typekit.dir/all] Error 2
Makefile:126: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2 -l2" failed

Edit: Thank you for your help. It looks like what you said.

I checked the orocos-rtt-gnulinx.pc, it seems correct for both Gentoo and Ubuntu. I mean those defined lib and include paths.

But the output of pkg-config --libs orocos-rtt-gnulinux.pc on Gentoo is

-L/opt/ros/ws_orocos/install_isolated defining another variable in terms of the first/lib -lorocos-rtt-gnulinux -lpthread -lrt # If some RTT headers include inline calls other libra ries, we need to specify these here too.

How should I do with this?


Edit2: Now I got rtt-ros-integration built on Gentoo by reinstalling the pkgconfig (emerge dev-util/pkgconfig).

Great help from @gvdhoorn. Thank you!


Originally posted by Fulin on ROS Answers with karma: 11 on 2015-12-11

Post score: 0


Original comments

Comment by gvdhoorn on 2015-12-14:
Please don't use answers to post updates to your original question. Either use comments, or better yet, update your question using the edit button/link. I've moved all the text you added to your original question for you this time.

Comment by gvdhoorn on 2015-12-14:
Also: if you feel your question has been answered, please mark it as such by ticking the checkmark next to the answer.

In this case, you might want to answer your own question (so tell us what you did to solve it), and then mark that as the answer. Other users will then know this is answered.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

I'm not sure, but those error: defining: No such file or directory errors seem more like issues with the build script (CMakeLists.txt or something else) than with your OS. It looks like a comment is being interpreted as a linking instruction. Maybe there is a typo in the script somewhere?


Edit: looks like there are two separate sentences used as linker input (or something like that):

defining another variable in terms of the first

and

If some RTT headers include inline calls other libraries we need to specify these here too

Googling for these turns up orocos-toolchain/rtt/rtt/orocos-rtt.pc.in, which seems to have these as comments in the .pc file:

...
exec_prefix=${prefix}  # defining another variable in terms of the first
...
Libs: -L${libdir} -lorocos-rtt-@OROCOS_TARGET@ @RTT_USER_LINK_LIBS@ @RTT_USER_LDFLAGS@ # If some RTT headers include inline calls to other libraries, we need to specify these here too.
...

Could it be that pkg-config on Gentoo is returning those comments as parts of the Libs variable?

Can you add the output of pkg-config --libs orocos-rtt to your original question?


Originally posted by gvdhoorn with karma: 86574 on 2015-12-11

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.