目录
一、检查Cmake版本
二、检查Ros版本
三、下载安装
1.把Unbuntu的软件源更换为国内的软件源,这样可以提高下载速度
2.设置公钥并更新最新可用软件包列表
3.安装ROS
4.设置环境变量
5.下载其他功能组件
6.rosdep init 初始化
7.rosdep update 更新
8.检查安装情况:运行小海龟和rviz
四、检查cmak版本以及创建简单的Ros空间
1.检查cmak版本
2.创建简单的Ros空间
本文写于2022年4月6日,第一次安装ROS,遇到了种种困难,写一篇博客纪录一下。
2022年10月26日更新一下,推荐使用鱼香ROS的一键安装ROS命令,很方便。(注意:安装ROS需要在网络好的地方安装,否则会出现无法下载的错误)鱼香ROS主页
wget http://fishros.com/install -O fishros && . fishros
第一次打开终端输入该命令选择[1]:一键安装:ROS,安装完成后再次输入该命令选择[3]:一键配置:rosdep,完成后再次输入该命令选择[4]:一键配置:ROS环境,之后就完成了ROS的安装。接下来就可以直接跳到 8.检查安装情况:运行小海龟和rviz 测试小乌龟了。
安装Ros 时将自动安装旧版的cmake3.10.2,防止安装了高版本的cmake,安装完Ros后,却只能使用cmake3.10.2。
因为我在安装视觉slam十四讲第二版ch13一个库glog时候,报错cmake版本过低,安装了高版本的cmake3.21.6。
打开终端输入
cmake -version
安装Ros之后可能出现这种情况:在终端的命令行输入 cmake -version 将会显示 cmake version 3.10
不同的Unbutn安装的Ros版本不同。Ubuntu18.04对应的ros版本为 ROS Melodic
其他版本对于关系如下:
以下步骤参考Ros官网:http://wiki.ros.org/melodic/Installation/Ubuntu
具体步骤可以参考这篇博客
2.1设置公钥
打开终端输入
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
2.2 更新最新可用软件包列表
在终端输入
sudo apt update
在终端输入
sudo apt install ros-melodic-desktop-full
此包里包括ROS,rqt,rviz,机器人通用库,2D / 3D模拟器,导航和2D / 3D感知等等的全套基础组件
将整个ros系统的环境变量设置到bash脚本中,在终端输入
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
让上面的配置在当前的终端生效,在终端输入
source ~/.bashrc
1.在终端输入
sudo apt install python-rosdep
sudo apt install python-rosinstall
sudo apt install python-rosinstall-generator
sudo apt install python-wstool
sudo apt install build-essential
2.在执行以上命令时可能报错
(1)错误1
build-essential 已经是最新版 (12.4ubuntu1)。
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
python-catkin-pkg : 依赖: python-catkin-pkg-modules (>= 0.4.24) 但是它将不会被安装
python-rosdep-modules : 依赖: python-rospkg-modules (>= 1.3.0) 但是它将不会被安装
依赖: python-catkin-pkg-modules (>= 0.4.0) 但是它将不会被安装
python-rosdistro-modules : 依赖: python-catkin-pkg-modules 但是它将不会被安装
依赖: python-rospkg-modules 但是它将不会被安装
python-rosinstall : 依赖: python-vcstools (>= 0.1.38) 但是它将不会被安装
依赖: subversion 但是它将不会被安装
依赖: mercurial 但是它将不会被安装
依赖: bzr 但是它将不会被安装
python-wstool : 依赖: python-vcstools (>= 0.1.38) 但是它将不会被安装
依赖: subversion 但是它将不会被安装
或者ununtu系统提示ubuntu软件包系统已损坏
问题多半是上次更新没有更新完,打开终端输入
sudo apt-get clean
说明:删除包缓存中的所有包,将 /var/cache/apt/archives/ 的 所有 deb 删掉
sudo apt-get -f install
说明:自动修复安装程序包所依赖的包
sudo apt-get update
说明:更新软件列表
sudo apt-get upgrade
说明:将最新软件列表和本地软件比对,更新软件
(2)错误2
dpkg: error processing archive /var/cache/apt/archives/python-rospkg-modules_1.1.9-1_all.deb (--unpack):
trying to overwrite '/usr/lib/python2.7/dist-packages/rospkg/__init__.py', which is also in package python-rospkg 1.1.4-1
Errors were encountered while processing:
/var/cache/apt/archives/python-rospkg-modules_1.1.9-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
参考这篇博客
#使用这个指令:sudo dpkg -i --force-overwrite
$ sudo dpkg -i --force-overwrite /var/cache/apt/archives/python-rospkg-modules_1.1.9-1_all.deb
#然后:
$ sudo apt-get -f install
1.在终端输入
sudo rosdep init
2.常见报错
参考这篇博客
(1)错误1
sudo: rosdep:找不到命令
解决办法,打开终端输入
sudo apt install python-rosdep2
然后再次初始化rosdep
sudo rosdep init
(2)错误2
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
因为https://raw.githubusercontent.com/网站连接不稳定,可打开https://www.ipaddress.com/查看raw.githubusercontent.com的真实IP地址
输入
raw.githubusercontent.com
查询到真实IP地址
选取IP地址185.199.108.133
打开终端输入
sudo gedit /etc/hosts
在文件的最后一行输入
185.199.108.133 raw.githubusercontent.com
保存文件,再次初始化rosdep
sudo rosdep init
如果错误2按照这种方法没有解决,只能使用终极解决方案,此方法我没有尝试,应该是可行的。
在终端输入
rosdep update
1.运行小乌龟
打开终端输入
roscore
再打开一个终端输入
rosrun turtlesim turtlesim_node
出现了一个小海龟
再打开一个终端输入
rosrun turtlesim turtle_teleop_key
让光标在第三个打开的终端中闪烁,此时就可以通过方向键控制小乌龟移动了
2.运行rviz
打开终端输入
roscore
再打开一个终端输入
rosrun rviz rviz
出现这个画面说明rviz等组件安装成功
打开终端输入
cmake -version
若版本号与安装之前的一样,那么不需要什么操作,若版本号变成了cmake3.10.2并且不是你之前的版本号,想使用之前版本的cmake,参考此篇博客
参考此篇博客