Replies: 3 comments 2 replies
-
Did you do the full build from source or are you using debian ros-o packages as a starting point (if you were building on 22.04/22.10 for example)? The super long
Is that correct? Why don't you want to do the overlay and have your catkin_ws use base_catkin_ws to build with? That's the only way for a node in catkin_ws to have dependencies resolved that are only in base_catkin_ws. If it wasn't clear how to do the overlay you want to source base_catkin_ws/devel/setup.bash with a clean catkin_ws catkin config (you can |
Beta Was this translation helpful? Give feedback.
-
You can make a catkin workspace an install workspace by running It didn't seem possible to mix install workspaces and devel workspaces with overlays (though maybe it is, I didn't try for long)- so you need to rebuild all of base_catkin_ws using You may be accustomed to being able to edit a python file in a devel workspace and then immediately rosrun/roslaunch it and test the changes, but with install workspaces that python file has to be copied into the You also may have to edit a number of CMakeLists.txt in your workspace packages to get them to install all the needed files properly, typically the better maintained open source packages do this but if you have packages written by other people who never install them it's unlikely they would have taken those extra steps. Another nice thing about the install is that you can tar/zip up the entire |
Beta Was this translation helpful? Give feedback.
-
I'm not understanding the 'it was also overridden instead, so this also didn't work for me' reason for the overlay not working- there's something unique about your environment that you can't control that causes the overriding and prevents overlaying? |
Beta Was this translation helpful? Give feedback.
-
I wanted to connect to the turtlesim tutorial example from the base workspace using a node I created in my own custom workspace, by following the topics of the turtlesim node like pose, cmd_vel, etc., that's what I did:
roscore
command, the master node ran perfectly$ source ~/base_catkin_ws/devel/setup.bash
, I ran the turtlesim node with$ rosrun turtlesim turtlesim_node
, and it did open the simulator just perfectly$ source ~/catkin_ws/devel/setup.bash
rosrun
, I get the following error:I tried to work around this issue, first I sourced the base workspace in this terminal too, so that the turtlesim module can be recognized, then I run my node simply with python command
$ python3 turtle_bot.py
, it did everything expected from the node, that's how I know nothing is wrong in the code itself.I also know that if I joined my workspace to the base workspace everything will be fine, but my question is: Is there another way to do it?
I also want to state the following:
$ source /opt/ros/noetic/setup.bash
, and the output to$ echo $ROS_PACKAGE_PATH
would be:$ source ~/base_catkin_ws/devel/setup.bash
, but strangely enough for me, when I navigate the ROS_PACKAGE_PATH, I get the following:Is that ok?
so the workspace overlays the base ROS environment, however, in our case, the workspace is overridden, hence I get the following new ROS_PACKAGE_PATH:
Is there a solution for that?
Is something wrong with my build?
Thanks so much in advance!
Beta Was this translation helpful? Give feedback.
All reactions