Orocos - Ros

Hi,

Three weeks ago, I installed orocos-toolchain and went through the exercises for rtt2.x succesfully. Now I want to test the coupling between orocos and ros.

Ros cturtle is installed on my machine and I added the orocos_toolchain_ros stack using apt-get. After that, I removed the orocos-toolchain installation completely. Now I am trying to go through the exercises again, but I found following issues:

1) installing orocos-toolchain and the orocos_toolchain_ros_stack is different in the sense that all headers and libraries of both ocl and rtt are in the same folder in the first case (/opt/orocos-toolchain/install) while that's not the case with the ros stack (/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install). To deal with this issues I changed the makefiles to:

OROPATH1=/opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install
OROPATH2=/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install
CXXFLAGS=-I{OROPATH1}/include -I{OROPATH2}/include -DOROCOS_TARGET={TARGET} -fPIC -DRTT_COMPONENT
LDFLAGS=-shared -L{OROPATH1}/lib -L{OROPATH2}/lib -Wl,-rpath {OROPATH1}/lib -Wl,-rpath {OROPATH2}/lib -lorocos-rtt-{TARGET}

2) The env.sh file I found in .../stacks/orocos_toolchain_ros/ doesn't contain a lot and how should RTT_COMPONENT_PATH be set? To use the deployer-gnulinux I had to add /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/bin to my PATH variable. When I use this deployer for exercise hello-7, only the Example::Hello and Example::World are created, no fileReporting, consoleReporting, TimerComponent, ...

Adding /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install/lib and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install/lib to RTT_COMPONENT_PATH doesn't help.

Does all of this makes sense to anybody? Thanks,

Bert

Orocos - Ros

Hey Bert,

2010/11/25 bert [dot] willaert [..] ... <bert [dot] willaert [..] ...>:
> Hi,
>
> Three weeks ago, I installed orocos-toolchain and went through the exercises for rtt2.x succesfully. Now I want to test the coupling between orocos and ros.
>
> Ros cturtle is installed on my machine and I added the orocos_toolchain_ros stack using apt-get. After that, I removed the orocos-toolchain installation completely. Now I am trying to go through the exercises again, but I found following issues:
>
> 1) installing orocos-toolchain and the orocos_toolchain_ros_stack is different in the sense that all headers and libraries of both ocl and rtt are in the same folder in the first case (/opt/orocos-toolchain/install) while that's not the case with the ros stack (/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install). To deal with this issues I changed the makefiles to:
>
> OROPATH1=/opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install
> OROPATH2=/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install
> CXXFLAGS=-I{OROPATH1}/include -I{OROPATH2}/include  -DOROCOS_TARGET={TARGET} -fPIC -DRTT_COMPONENT
> LDFLAGS=-shared -L{OROPATH1}/lib -L{OROPATH2}/lib -Wl,-rpath {OROPATH1}/lib -Wl,-rpath {OROPATH2}/lib -lorocos-rtt-{TARGET}

Yes, that makes sense. The Makefile in the exercises assumes you have
a RTT / OCL installation in /usr/local - which obviously is not the
case. However, I've bypassed this when I made the ROS package with
extra CMake code. To compile the exercises you can either:

- do it like you did it now - go to a specific exercise and use that
Makefile (which needs some modifications)
- do a 'rosmake rtt_exercises' - this will place all binaries in
/rtt_exercises/bin and all libraries in /rtt_exercises/lib

So it's a matter of preferences :)

>
>
> 2) The env.sh file I found in .../stacks/orocos_toolchain_ros/ doesn't contain a lot and how should RTT_COMPONENT_PATH be set?
> To use the deployer-gnulinux I had to add /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/bin to my PATH variable. When I use this deployer for exercise hello-7, only the Example::Hello and Example::World are created, no fileReporting, consoleReporting, TimerComponent, ...

You should set your RTT_COMPONENT_PATH yourself - e.g. in your .bashrc file
I'm not sure about this, but as far as I can see the exercises only
provides the hello and world component - the others are parts of OCL /
RTT. I've just updated the rtt_exercises contained in the ROS package
- however this update will only be available after the next
orocos_toolchain_ros release, within 1 or 2 weeks probably. As you
already went through the original exercises - there is no need to wait
for this of course :).

>
> Adding /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install/lib and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install/lib to RTT_COMPONENT_PATH doesn't help.

Try with adding the 'orocos' folder at the end, so:
"/opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install/lib/orocos"
- that should do the job.

regards,

Steven

>
> Does all of this makes sense to anybody? Thanks,
>
> Bert
>
>
>
>
>
>
>
>
>
>
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

Orocos - Ros

Hi,

Three weeks ago, I installed orocos-toolchain and went through the exercises for rtt2.x succesfully. Now I want to test the coupling between orocos and ros.

Ros cturtle is installed on my machine and I added the orocos_toolchain_ros stack using apt-get. After that, I removed the orocos-toolchain installation completely. Now I am trying to go through the exercises again, but I found following issues:

1) installing orocos-toolchain and the orocos_toolchain_ros_stack is different in the sense that all headers and libraries of both ocl and rtt are in the same folder in the first case (/opt/orocos-toolchain/install) while that's not the case with the ros stack (/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install). To deal with this issues I changed the makefiles to:

OROPATH1=/opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install
OROPATH2=/opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install
CXXFLAGS=-I{OROPATH1}/include -I{OROPATH2}/include -DOROCOS_TARGET={TARGET} -fPIC -DRTT_COMPONENT
LDFLAGS=-shared -L{OROPATH1}/lib -L{OROPATH2}/lib -Wl,-rpath {OROPATH1}/lib -Wl,-rpath {OROPATH2}/lib -lorocos-rtt-{TARGET}

2) The env.sh file I found in .../stacks/orocos_toolchain_ros/ doesn't contain a lot and how should RTT_COMPONENT_PATH be set?
To use the deployer-gnulinux I had to add /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/bin to my PATH variable. When I use this deployer for exercise hello-7, only the Example::Hello and Example::World are created, no fileReporting, consoleReporting, TimerComponent, ...

Adding /opt/ros/cturtle/stacks/orocos_toolchain_ros/ocl/install/lib and /opt/ros/cturtle/stacks/orocos_toolchain_ros/rtt/install/lib to RTT_COMPONENT_PATH doesn't help.

Does all of this makes sense to anybody? Thanks,

Bert