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

Revision history [back]

Please note that the guide you followed is NOT from the ROS wiki, and, as far as I can tell, not in any way related to anything "official" from OSRF. So it might very well be that it contains quite a few strange things.

Quickly reading through it, it seems that Steps 1-5 are pretty much standard- Whereas the rest of the steps are instructions for a source install of the full ROS distro (which you installed from apt in steps 1-5). You won't need both, usually, but only one or the other.

Also note, that Python3 is the supported version for noetic, so I'm not sure why you would deviate from the standard ROS installation instructions...

As to you problems:

  1. Installing anything from ROS via apt-get will put the resulting executables and other artifacts into /opt/ros/noetic.
  2. Installing packages from a workspace with the --install flag usually installs in $(PATH_TO_WORKSPACE)/install, unless, as is done in the tutorial, you specify the --install-space /opt/ros/noetic flag, which again installs into /opt/ros/noetic. I would highly discourage to do this for a development package and anything that is not only a from source install.
  3. Note that there is a difference between caktin_make and caktin_make_isolated. This is why you get both, the build/devel and build_isolated/devel_isolated folders. See #q320613 for an overview of the different options.
  4. Note that the isolated and regular directories are two different builds of the same source workspace! I.e. why you cannot find your package built in non-isolation when sourcing the isolated workspace.
  5. If you really install your development package into /opt

    Oky I found something that works: If I use sudo src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/noetic -j1 -DPYTHON_EXECUTABLE=/usr/bin/python3 Now I can find my build package. But I'm still completly confuses what my file-system is.

    But now I have my package in /opt/ros/noetic/share So i have to put my code into that src folder

    your code still lives in your workspace, but if you compile, you have to install every time to get the new packae replaced.

You are correct in your "solution", that simply compiling your new workspace and ignoring the one created in step 6 of the tutorial is the way to go.

I'd even suggest to set up your raspberry again from scratch and follow the standard install guides. There might be quite a few things that have been messed up with the source install into /opt and that updates won't work...