Closed zichunxx closed 10 months ago
Hi @STAY-Melody, great to see you are giving RoboStack a go :).
Basically, if you want to use RoboStack, then you should use the libraries that are provided with conda-forge, not your system libraries. This explains why a workspace that was built with your system ROS is incompatible with your RoboStack environment.
To avoid incompatibilities, I highly recommend to build the workspace after activating the robostackenv. This will require a catkin clean
or similar first.
I am not sure what you mean by "the workspace should not contain some cpp files and only Python files are allowed". RoboStack/conda support both C++ and Python (and much more).
Regarding roslaunch moveit
: Again I am not sure I understand 100% what you mean. You can happily continue to use your system's ROS installation, that can exist in parallel to your robostackenv
. So you can use the robostackenv
in one terminal, and your system's ROS in another terminal. However, you need to make sure that you do not source /opt/ros/noetic/setup.bash
by default - it must not be sourced as this would lead to incompatibilities as per above. To avoid this, if necessary, simply remove it from your ~/.bashrc
or similar.
Let us know if you have more questions :)
@Tobias-Fischer Thanks for the detailed explanation.
Also, the workspace should not contain some cpp files, and only Python files are allowed.
I previously thought RoboStack
only supported Python, but now I have a whole new perspective on it.
You can happily continue to use your system's ROS installation, that can exist in parallel to your robostackenv. So you can use the robostackenv in one terminal, and your system's ROS in another terminal. However, you need to make sure that you do not source /opt/ros/noetic/setup.bash by default - it must not be sourced as this would lead to incompatibilities as per above. To avoid this, if necessary, simply remove it from your ~/.bashrc or similar.
I will try this method like you said.
BTW, I think RoboStack is not only a library but a good community. I'd like to contribute when I'm free. But at the moment, I think I don't have the skills to compile some pakcages and pull a request. So, is there any documentation I can refer to in order to add a new package to RoboStack
. It is also a good chance for me to learn something.
Thanks!
Great! Please refer to our paper on how to add new packages to robostack, and check out our contributing guide on https://robostack.github.io/Contributing.html
Many thanks, and let us know if you have more questions.
Best, Tobi
Hi!
Thanks to the whole team for the effort to maintain this repo. It indeed offers me some additional options to solve the problem.
Since this is my first time using ros-related libraries through a virtual environment, some of my questions may seem dumb but hopefully could be answered.
I used to create a new ros workspace and extend it after the upstream workspace, e.g.,
/opt/ros/noetic
, to configure the workspace chain. Currently, I have a workspace that was extended withcatkin config --extend ~/ws_moveit/devel
, where MoveIt is built from source. The build process works fine when I don't activaterobostackenv
(i.e., mamba env). However, when I activaterobostackenv
, the build process fails accompanied by somefind_package
errors. So, do I need to build the workspace inrobostackenv
if I want to use some libraries installed inrobostackenv
? Also, the workspace should not contain some cpp files and only Python files are allowed.Is this possible when I roslaunch moveit package with mamba deactivated and publish some messages via the python file in
robostackenv
?Thanks!