step1:查看自己虚拟机的版本,uname -a。不同版本需要安装不同的ROS系统;
参考官网:http://wiki.ros.org/Distributions,选择正确版本,我ubuntu系统是14.04.1,对应安装
July 22nd, 2014 |
step2:正常来说,按照 ROS wiki 上面的步骤安装即可:
设置ROS的源:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
官网为我们设置了三种国内源,可以点击mirror查看,设置;
step3:设置密钥
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
或者
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
step4:更新系统软件到最新
sudo apt-get update
这一步最容易出错,主要就是依赖关系问题导致无法安装;
我在安装是出现如下错误:
执行命令:sudo apt-get upgrade,出现如下错误:
按提示执行命令:sudo apt-get install -f,又出现如下错误:
烦躁。。。。
如果忽略这些错误,执行step5 :会报如下错误:
百度的答案,基本都是替换ubuntu更新源、修改网络(换手机热点)、删除ROS重新安装等等,但不生效。
研究了半天,原来是dpkg工具太老,需要安装或者更新,如果此时直接执行命名:sudo apt-get install dpkg 往往不能解决问题,会重复报出上面的错误。。。这是因为我们有破损的安装包需要安装或者卸载。具体可参考如下链接:
https://answers.ros.org/question/310473/ros-indigo-installation-dependency-issue/
按此,依次执行:
sudo apt-get remove --purge $(sudo dpkg -l | grep "^iU" | awk '{print $2}' | tr '\n' ' ')
dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge
sudo apt-get update && sudo apt-get upgrade dpkg
稍等片刻,成功。
step5:安装ros,推荐最全版本
sudo apt-get install ros-indigo-desktop-full
step6:初始化rosdep
sudo rosdep init rosdep update
step7:设置环境变量
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc source ~/.bashrc
step8:安装插件rosinsatll
sudo apt-get install python-rosinstall
step9:测试ROS安装是否成功
测试小乌龟DEMO,
1.启动ROS环境:
roscore
出现如下效果:
2. rosrun turtlesim turtlesim_node
3. rosrun turtlesim turtle_teleop_key
如果正常的话会出现如下截图:
如果到这都是正常的话,那恭喜你安装成功了,可以愉快的使用了。
最后,如果是通过PC的VM安装的虚拟机一般会自动带显示桌面,如果是非桌面版的需要另外安装显示软件,我用的是Xming。