This guide is derived from the official Noetic setup page, which can be found here: http://wiki.ros.org/noetic/Installation/Source
This version includes some customizations for missing packages on Ubuntu 18.04 which the jetson nano OS uses. I think this installation should work on most ubuntu 18.04 installations, but I can give no guarantees.
sudo apt install build-essential
sudo -H python3 -m pip install -U pip
sudo -H python3 -m pip install -U setuptools
sudo -H python3 -m pip install -U rosdep rosinstall_generator vcstool
sudo rosdep init
rosdep update
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Note: the default says desktop here, but i don't want all the GUI stuff, so i use the robot and perception packages instead
rosinstall_generator robot perception --rosdistro noetic --deps --tar > noetic-robot-perception.rosinstall
mkdir ./src
vcs import --input noetic-robot-perception.rosinstall ./src
rosdep install --from-paths ./src --ignore-packages-from-source --rosdistro noetic -y -r
# not sure if this is necessary:
sudo -H python3 -m pip install -U catkin_pkg
# again not sure if necessary:
sudo apt install liborocos-kdl-dev
for compilation error about cv_bridge not finding boost:
nano ./src/vision_opencv/cv_bridge/CmakeLists.txt
# change:
find_package(Boost REQUIRED python37)
# to:
find_package(Boost REQUIRED python3)
sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 --install-space /opt/ros/noetic
(optional) add setup.bash to bashrc so it's automatically loaded on the start of a terminal session
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
@patricknks
yes. This should probably work.
The filename of the
.rosinstall
file should not need to be the same as the packages you're selecting, so technically the only change necessary would be therosinstall_generator
line.you can also just add the desktop package to the ones I listed, i.e. do:
rosinstall_generator robot perception desktop --rosdistro noetic ...
, which should also install the desktop components.I have my nano in a headless configuration, so I don't need components such as rviz, but you can absolutely add that to your config and see what happens.
If you do, please report back if it works :)