Differences between revisions 46 and 47
Revision 46 as of 2019-11-19 11:09:34
Size: 1394
Editor: ?JochenSprickerhof
Comment:
Revision 47 as of 2022-01-28 10:11:51
Size: 2668
Editor: ?LeopoldPalomo
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Installation instruction to install ROS on Debian. Robot Operating System (ROS or ros) is an open-source robotics middleware suite. Although ROS is not an operating system but a collection of software frameworks for robot software development, it provides services designed for a heterogeneous computer cluster such as hardware abstraction, low-level device control, implementation of commonly used functionality, message-passing between processes, and package management [[[https://en.wikipedia.org/wiki/Robot_Operating_System| Wikipedia]]. ROS has two main versions: ROS1 and ROS2.
Line 3: Line 3:
[[DebianScience/Robotics/ROS/Todo|TODO]] ROS is released as distributions, also called “distros”, with more than one ROS distribution supported at a time. Check upstream [[ http://www.ros.org | web ]] for more information. This framework consists of about 1600 packages or projects that give a myriad of benefits for those of us who work in the field of robotics.
Line 5: Line 5:
[[DebianScience/Robotics/ROS/Development|How to help]]
Line 7: Line 6:
[[DebianScience/Robotics/ROS/Motivation|Motivation]] == ROS1 installation ==
Line 9: Line 8:
[[DebianScience/Robotics/ROS/Packages|Status of Packages]] If you want to install ROS1 in a Debian box you have a few options. The official [[http://wiki.ros.org/noetic/Installation|ROS page]] shows that the platforms supported are:
Line 11: Line 10:
[[https://github.com/gerkey/ros1_external_use|More information on how to use the packages]]  * Ubuntu Focal amd64 armhf arm64
 * Debian Buster amd64 arm64
Line 13: Line 13:
=== Compile the rest of desktop-full === The rest of the platforms are experimental.
Line 15: Line 15:
In Debian Unstable all the dependencies are there. For Jessie, we had to backported some libraries to have the same version than Unstable: The packages they provide are self-generated and do not feet most the rules of the Debian project. Each package, for [[ https://github.com/ros-visualization/qt_gui_core/tree/melodic-devel/qt_gui |example]], contains a package.xml file that among other things, it contains what its dependencies are for, to build and to run the package. Upstream provides a tool [[ http://wiki.ros.org/bloom | python3-bloom ]] , that it is in the [[ https://packages.debian.org/bullseye/python3-bloom | archive]] which generates a debian directory with necessary files to run debuild from that debian directory. It's a rudimentary package that for example, provides the *.pyc files!!.
Line 17: Line 17:
 * assimp
 * log4cxx
 * gazebo (6.5)
 * orocos-kdl
 * collada-dom
 * ompl
 * fcl
 * ignition-math2
 * sdformat
If you are running Debian Buster that is a possible option. Another option is to use the [[ https://wiki.debian.org/DebianScience/Robotics/ROS/DebianPackages | native packages ]] and complete the rest as is mentioned [[ https://wiki.debian.org/DebianScience/Robotics/ROS/OnBuster | here ]]. In case you are running Bullseye or Testing/Unstable you cannot use Upstream packages. You have these options:
Line 27: Line 19:
Installing the needed packages:  * [[ http://wiki.ros.org/noetic/Installation/Source | Install from sources.]]
 * Run an almost complete set of the main core packaged in Debian [[https://wiki.debian.org/DebianScience/Robotics/ROS/DebianPackages ]].
 * Use [[ | Debian for Robotics packages ]] and [[https://salsa.debian.org/robotics-team/ros4debian | ros4debian ]] to have an almost complete installation.
Line 29: Line 23:
{{{#!highlight bash
sudo apt-get update
sudo apt-get install ros-desktop-full-dev libros-filters-plugins-dev
}}}

Compile the rest. First download the list of missing packages: [[attachment:jade-debian-desktop-full-missing-packages_20160216.rosinstall]]

{{{#!highlight bash
mkdir ~/ros
cd ~/ros
wstool init -j8 src jade-debian-desktop-full-missing-packages_20160216.rosinstall
catkin_make_isolated --install
}}}

To use the local ROS workspace:
{{{#!highlight bash
echo "source ~/ros/install_isolated/setup.bash" >> ~/.bashrc
source ~/ros/install_isolated/setup.bash
}}}

and after, you can create you catkin_ws and use catkin_make with you own
workspaces.
== ROS2 installation ==

Robot Operating System (ROS or ros) is an open-source robotics middleware suite. Although ROS is not an operating system but a collection of software frameworks for robot software development, it provides services designed for a heterogeneous computer cluster such as hardware abstraction, low-level device control, implementation of commonly used functionality, message-passing between processes, and package management ?Wikipedia. ROS has two main versions: ROS1 and ROS2.

ROS is released as distributions, also called “distros”, with more than one ROS distribution supported at a time. Check upstream web for more information. This framework consists of about 1600 packages or projects that give a myriad of benefits for those of us who work in the field of robotics.

ROS1 installation

If you want to install ROS1 in a Debian box you have a few options. The official ROS page shows that the platforms supported are:

  • Ubuntu Focal amd64 armhf arm64
  • Debian Buster amd64 arm64

The rest of the platforms are experimental.

The packages they provide are self-generated and do not feet most the rules of the Debian project. Each package, for example, contains a package.xml file that among other things, it contains what its dependencies are for, to build and to run the package. Upstream provides a tool python3-bloom , that it is in the archive which generates a debian directory with necessary files to run debuild from that debian directory. It's a rudimentary package that for example, provides the *.pyc files!!.

If you are running Debian Buster that is a possible option. Another option is to use the native packages and complete the rest as is mentioned here. In case you are running Bullseye or Testing/Unstable you cannot use Upstream packages. You have these options:

ROS2 installation