ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Using at the same time a binary installed and a source installed version of a package

asked 2020-04-13 03:42:07 -0500

ale gravatar image

Hi, I would need to try both the version installed via .deb and the one installed via the source code of the "MoveIt" package, but I don't know how to handle it. I have not found anything about it, more generally, is it possible to manage (and how) two different versions of the package as I have described? Thanks a lot.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
3

answered 2020-04-13 03:52:51 -0500

gvdhoorn gravatar image

updated 2020-04-13 03:53:28 -0500

Using at the same time a binary installed and a source installed version of a package [..] is it possible to manage (and how) two different versions of the package as I have described?

Yes, create two workspaces, and make sure to put the "source version" only in one of those workspaces.

Make sure to not auto source anything, and source each workspace in its own terminal.

Now you can start the released version and the built-from-source version each from their own workspace.

Make sure not to source both workspaces in the same terminal, otherwise one will overlay the other and you will lose access to either the from-deb or the from-source` version.

edit flag offensive delete link more

Comments

Thanks for the reply, but I have a doubt. In this way I can not do the "source" in the workspace where I installed the one from the source and not use it (while I use the other), however it is not clear how to do the opposite, the one installed by binaries is inserted in the ROS path, the only way to exclude it is not to "source" the ROS path, not being able to use everything else.

ale gravatar image ale  ( 2020-04-13 04:06:41 -0500 )edit

the one installed by binaries is inserted in the ROS path, the only way to exclude it is not to "source" the ROS path, not being able to use everything else.

No, that's not how it works.

Packages in overlaid workspaces will take precedence over packages in lower layers.

So if pkg A is only present in /opt/ros, you'll execute its binaries. If you have pkg A in your workspace and in /opt/ros, the A in your workspace will be used. Refer to wiki/catkin/Tutorials/workspace_overlaying for more information about workspace overlaying.

gvdhoorn gravatar image gvdhoorn  ( 2020-04-13 04:11:17 -0500 )edit

Oh perfect thanks, everything is clear now. I'm sorry I opened a new question when there was already a clear tutorial on the subject but I hadn't really found it.

ale gravatar image ale  ( 2020-04-13 04:31:02 -0500 )edit

Question Tools

Stats

Asked: 2020-04-13 03:42:07 -0500

Seen: 364 times

Last updated: Apr 13 '20