How deployement and changing path of dependencies

asked 2020-05-29 03:19:52 -0500

HLaloge-LC gravatar image

I have this setup: I am using Conan to handle my dependencies, and some of them are ROS packages that uses catkin. The building and the packaging, and development workflow with Conan works fine.

However, when I deploy, I move my dependencies from $HOME/.conan/data/.... to ${CMAKE_INSTALL_PREFIX}/deps, /opt/mysoft/deps for instance, so I can ship my software with its dependencies.

The problem (at least one of them) is that I when I run /opt/mysoft/setup.bash, it doesn't find my dependencies, because the CMAKE_PREFIX_PATH hard-coded in the is wrong and points at $HOME/.conan/data/...., so it doesn't fill the ROS_PACKAGE_PATH with the content of /opt/mysoft/deps/ros_dep_a, /opt/mysoft/deps/ros_dep_b, etc...

First I thought about using the local_setup.bash, however it doesn't run the catkin hooks. It would if the --extend flag took the current CMAKE_PREFIX_PATH in account while searching for the hooks.

How can I do, or where can I find some documentation about this use-case ?

I am running Ubuntu 16.04 with ROS kinetic.

Original issue:

edit retag flag offensive close merge delete