日志文章

2020-6-2 aflfte2011

debian ros安装

先决条件
安装引导程序依赖项
安装引导程序依赖项(Ubuntu):

这些工具用于简化ROS软件包及其依赖项的下载和管理。

Ubuntu或Debian:

$ sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential

如果您在上面的命令中安装软件包时遇到问题,请确保已按照此处所述,将packages.ros.org debian存储库添加到了您的apt源列表中:dynamic / Installation / Ubuntu#Installation.2BAC8-Ubuntu.2BAC8-Sources .Setup_your_sources.list

如果apt抱怨无法安装python-support软件包,请确保在/etc/apt/sources.list中启用了Ubuntu Universe存储库。

Fedora:

$ sudo yum install python-rosdep python-rosinstall_generator python-wstool python-rosinstall @ buildsys-build
ROS中使用的某些软件包目前在Fedora RPM存储库中不可用。RPM Fusion中提供了其他大多数软件包。请参阅RPM Fusion命令行设置。

RPM Fusion中不可用的所有软件包都在SDSM&T ROS RPM登台存储库中进行登台,该存储库可从csc.mcs.sdsmt.edu获得。

Generic(pip):

如果您使用的是非Debian系统,则需要确保已安装所有构建工具(编译器,CMake等)。您可以通过PIP安装所有ROS Python工具:

$ sudo pip install -U rosdep rosinstall_generator wstool rosinstall

如果此步骤或下面的rosdep步骤存在错误,则系统的pip版本可能已过期。使用系统的程序包管理来更新它,或使用它来更新自身:

$ sudo pip install-upgrade setuptools

请注意,在许多平台(例如OSX)上,您可能需要安装上述软件包并在virtualenv中使用ROS,以确保不与系统依赖项冲突。

初始化rosdep

$ sudo rosdep init
$ rosdep update

安装
首先构建核心ROS软件包。

构建柔kin花包装
ROS正在转换为catkin构建系统,但是并非所有软件包都已转换,因此不能同时使用两个构建系统。因此,有必要先构建核心ROS程序包(catkin程序包),然后再构建其余的程序包。

创建柳絮工作区
为了构建核心软件包,您将需要一个catkin工作区。立即创建一个:

$ mkdir〜/ ros_catkin_ws
$ cd〜/ ros_catkin_ws

接下来,我们将要获取核心软件包,以便我们可以构建它们。我们将为此使用wstool。为您要安装的特定变体选择wstool命令:

桌面完整安装: ROS,rqt,rviz,机器人通用库,2D / 3D模拟器,导航和2D / 3D感知

$ rosinstall_generator desktop_full --rosdistro kinetic --deps --wet-only --tar > kinetic-desktop-full-wet.rosinstall
$ wstool init -j8 src kinetic-desktop-full-wet.rosinstall

桌面安装(推荐): ROS,rqt,rviz和机械手通用库

$ rosinstall_generator desktop --rosdistro kinetic --deps --wet-only --tar > kinetic-desktop-wet.rosinstall
$ wstool init -j8 src kinetic-desktop-wet.rosinstall

ROS-Comm :(裸露的骨头) ROS程序包,构建和通信库。没有GUI工具。

$ rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --tar > kinetic-ros_comm-wet.rosinstall
$ wstool init -j8 src kinetic-ros_comm-wet.rosinstall

这将在给定的变体中添加所有的柔cat包或湿包,然后将源获取到〜/ ros_catkin_ws / src目录中。该命令将花费几分钟的时间将所有核心ROS软件包下载到src文件夹中。该-j8选项下载并行8级封装。


除了上述3个变体以外,REP 131中还定义了更多变体,例如robot,悟性等。只需将包装路径更改为所需的路径即可,例如,对于robot而言:


$ rosinstall_generator robot --rosdistro kinetic --deps --wet-only --tar > kinetic-robot-wet.rosinstall
$ wstool init -j8 src kinetic-robot-wet.rosinstall

如果wstool init失败或被中断,可以通过运行以下命令恢复下载:


wstool update -j 4 -t src

解决依赖关系

在构建Catkin工作区之前,需要确保您具有所有必需的依赖项。为此,我们使用rosdep工具:

$ rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

这将查看src目录中的所有软件包,并找到它们具有的所有依赖关系。然后它将递归安装依赖项。

该--from路径选项指示我们要安装的依赖性针对封装的整个目录,在这种情况下SRC。该--ignore-SRC选项指示rosdep,它不应该尝试在安装任何ROS包SRC从包管理器文件夹,我们并不需要它,因为我们正在建设他们自己。该--rosdistro因为我们没有ROS环境设置又选项是必需的,所以我们要指示rosdep什么版本的ROS的,我们正在建设。最后,-y选项向rosdep表示,我们不想被软件包管理器中的太多提示所困扰。

一段时间后(可能会提示您输入密码),rosdep将完成安装系统依赖项,您可以继续。

建立柳絮工作区
完成下载程序包并解决依赖关系后,就可以构建catkin程序包了。我们将使用catkin_make_isolated命令,因为基本安装中同时包含catkin和plain cmake软件包,在仅使用catkin的工作区上进行开发时,应使用catkin / commands / catkin_make。

调用catkin_make_isolated:

$ ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release

注意:您可能想要选择其他CMake构建类型(例如RelWithDebInfo或Debug,请参见http://cmake.org/cmake/help/v2.8.12/cmake.html#variable:CMAKE_BUILD_TYPE)。


注意:默认的catkin安装位置为〜/ ros_catkin_ws / install_isolated,如果您想在其他位置安装,则可以在catkin_make_isolated调用中添加--install-space / opt / ros / kinetic参数来完成此操作。

要在没有Ubuntu的机器人上使用,建议像Ubuntu软件包一样将编译后的代码安装到/ opt / ros / kinetic中。不要在Ubuntu中这样做,因为这些软件包会与apt-get软件包发生冲突。也可以将其安装在其他位置(例如/ usr),但是除非您真的知道自己在做什么,否则不建议您这样做。

请参阅REP 122:文件系统层次结构布局,以获取有关如何放置已安装文件的更多详细文档。


注意:在上面的命令中,我们从catkin源文件夹运行catkin_make_isolated命令,因为尚未安装它,一旦安装它就可以直接调用。

现在,这些软件包应该已经安装到〜/ ros_catkin_ws / install_isolated或使用--install-space参数指定的任何位置。如果查看该目录,将看到已经生成了setup.bash文件。要利用那里安装的东西,只需提供该文件的源即可。现在让我们在构建其余的ROS之前执行此操作:

$source 〜/ ros_catkin_ws / install_isolated / setup.bash

维护源检出
如果我们想使源代码签帐保持最新,则必须定期更新rosinstall文件,下载最新源代码并重建工作区。

更新工作区
要更新您的工作区,请首先移动现有的rosinstall文件,以使其不会被覆盖,然后生成更新的版本。为简单起见,我们将介绍* destop-full *变体。对于其他变体,请适当更新文件名和rosinstall_generator参数。

$ mv -i kinetic-desktop-full-wet.rosinstall kinetic-desktop-full-wet.rosinstall.old
$ rosinstall_generator desktop_full --rosdistro kinetic --deps --wet-only --tar > kinetic-desktop-full-wet.rosinstall

然后,将新的rosinstall文件与旧版本进行比较,以查看将更新哪些软件包:

$ diff -u kinetic-desktop-full-wet.rosinstall kinetic-desktop-full-wet.rosinstall.old

如果您对这些更改感到满意,请将新的rosinstall文件合并到工作空间中并更新您的工作空间:


$ wstool merge -t src kinetic-desktop-full-wet.rosinstall
$ wstool update -t src

重建工作区
现在,工作空间是最新的,可以重新构建它:


$ ./src/catkin/bin/catkin_make_isolated --install

如果最初在工作空间时指定了--install-space选项,则在重建工作空间时应再次指定它

重建工作空间后,应再次获取安装文件:

$ source ~/ros_catkin_ws/install_isolated/setup.bash


cannot download default sources list from:


首先要感谢 weixin_42817528,是他的留言让这个在我心中一直悬而未决的问题终于有了近完美的解答!然后,就是要感谢蓝鲸ROS机器人论坛的网友xiaoqiang。

为了方便大家,现将解决方案移于此。

#打开hosts文件
sudo gedit /etc/hosts
#在文件末尾添加
151.101.84.133  raw.githubusercontent.com
#保存后退出再尝试


apt-get install build-essential
apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libdc1394-22-dev


pip安装
sudo python3 -m pip install --upgrade --force-reinstall pip

« debian 允许root用户登录 | dedecms时间标签使用方法»