Home | Tutorials | Wiki | Issues
Ask Your Question

Using ros pluggin & catkin build

asked 2018-03-08 11:30:58 -0600

Guillaume Charland Arcand gravatar image

updated 2018-03-08 11:35:32 -0600

sloretz gravatar image


I am trying to build and link my ros pluggin to Gazebo. I am building all my ros packages (and therefore the pluggin) using catkin build.

I am using this example from the tutorial as a base : http://gazebosim.org/tutorials?tut=ro...

The main difference I see is that I am not using catkin_make but caktin build

In the tutorial, it is explained that you need to add the following lines to your package.xml :

<gazebo_ros plugin_path="${prefix}/lib" gazebo_media_path="${prefix}" />

Which if I understand correctly, will tell Gazebo where to search for my compiled plugin library (plugin.so).

What I am seeing, is that when building with catkin_make, my plugin.so is located @ catkin_ws/devel/lib/plugin.so So I suppose that the path ${prefix}/lib is correct (that is ${prefix} somehow resolves to catkin_ws/devel/)

But if I build using catkin build, my plugin.so is located @ catkin_ws/build/package_name/plugin.so.

How should I adjust my package.xml such that Gazebo can find my plugin ?

Also, is there other variable, other then ${prefix}that I can use in package.xml, and to what does ${prefix} resolve to ?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2018-03-08 13:21:10 -0600

Guillaume Charland Arcand gravatar image


I found my problem. This is linked to this thread :


Along with this :


The problem is not based on the change from catkin_make to catkin build, but the order in which the element of my CMakeLists were writing. By following the CMakeLists rules from the second link, my plugin.so was generated in devel/lib and everything is working fine.

edit flag offensive delete link more
Login/Signup to Answer

Question Tools

1 follower


Asked: 2018-03-08 11:30:25 -0600

Seen: 353 times

Last updated: Mar 08 '18