Running C++ ROS code outside package

asked 2016-01-27 07:06:44 -0500

esillen gravatar image

I have a C++ program built without using ROS in mind. Now I want to be able to plot stuff from this program using ROS messages to rviz. I have troubles compiling and need some help!

I know that you can run a python ROS script without doing

rosrun package node

but simply


and still be able to send ros messages. I want to be able to be able to compile and run my c++ program like that without the extra effort of creating a package and a catkin workspace.

I am a c++ newbie but my guess is that I only need to put the correct inludes inside my CMakeLists.txt-file.

How do I run my program stand-alone but using ROS messages?

edit retag flag offensive close merge delete



Why would you want to do that? To compile your node you need tons of dependencies that catkin is managing. IMO it would be a nightmare otherwise.

Javier V. Gómez gravatar image Javier V. Gómez  ( 2016-01-27 07:24:46 -0500 )edit

You will need the correct includes and linking directives in the CMakeLists.txt. Which these are is precisely, what catkin figures out for you. It really just does a quite cmake-y find_package like any other cmake library. There is considerable less effort in setting up a catkin workspace.

dornhege gravatar image dornhege  ( 2016-01-27 07:42:39 -0500 )edit

Ok that's annoying but I'm going to take your advice! Thanks.

esillen gravatar image esillen  ( 2016-01-27 08:00:32 -0500 )edit

@esillen You will see that having a minimum structure in your folder allows to implement many other things much easier :)

Javier V. Gómez gravatar image Javier V. Gómez  ( 2016-01-27 11:36:46 -0500 )edit