8月份在忙考试的事情,不太有时间更新博客,新学了一些杂七杂八的东西也一直放在脑子里。9月份时间比较多,稍微学了点linux方面的东西,并借此总结一下在装ros过程中遇到的问题。
在安装之前,需要搞清楚每个版本的ubuntu对应一个版本的ros,因此需要搞清楚下载对应版本的ros才不会出错,参考版本如下:
ubuntu版本 | ros版本 |
---|---|
20.04LTS | ROS Noetic Ninjemys |
18.04LTS | ROS Melodic Morenia |
16.04LTS | ROS Kinetic Kame |
进入Software&Updates,按照如下配置:
note: 红框中全部勾选,Download from建议选择国内服务器,如阿里云。
为了加快安装速度,优先选择中科大的镜像源:
在终端键入:
$ sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'
note: 如果遇到报错或警告最好留意一下,不要直接跳过。记得不要打错网址!!!
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654
$ sudo apt-get update
$ sudo apt-get install ros-melodic-desktop-full
文件较大,需要等待一段时间,如果中途出现timeout等网络问题只需要再次键入第二条指令,直到安装完成
$ sudo rosdep init
输入上述命令后可能会有no command的错误,需要首先安装python的pip命令来安装rosdep2:
$ sudo apt-get install python-pip
$ sudo pip install -U rosdep
$ sudo rosdep init
紧接着输入:
$ rosdep update
这步可能会出现两个错误:
$ cd /
$ cd /usr/lib/python2.7/dist-packages/rosdep2
$ sudo gedit ./sources_list.py # 修改DOWNLOAD_TIMEOUT的值,往大调
$ sudo gedit ./gbpdistro_support.py
$ sudo gedit ./rep3.py
# 以下两步操作同上,之后再尝试:
$ rosdep update
浏览器进入链接,复制任意IP地址:
然后编辑文件 /etc/hosts
$ sudo gedit /etc/hosts
最后多次运行update直至安装完成。
$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
$ sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
$ roscore
$ rosrun turtlesim turtlesim_node
$ rosrun turtlesim turtlesim_teleop_key
这时应弹出GUI界面,按上下左右键可控制小海龟运动,安装完成!!!!
对于在win10上有网络代理的朋友,希望在虚拟机上也能加速外网访问,可以进行如下配置:
首先,在win10上打开cmd,输入ipconfig,此时最好虚拟机软件也处于运行状态。
选择虚拟机网络为NAT模式,然后进入ubuntu配置网络代理:
选择Network Proxy,并在红框在输入刚刚复制的IP地址。而右边红色指针指向的四个框需要填对应端口号,在windows上代理软件的设置出应该有给出(必须填对,否则用不了)
note: 代理软件也需要设置为允许局域网访问和其他计算机连接。
https://blog.csdn.net/qq_41450811/article/details/99079041 ↩︎
https://answers.ros.org/question/32875/rosdep-command-not-found/ ↩︎
https://blog.csdn.net/qq_38649880/article/details/87903654 ↩︎
https://blog.csdn.net/weixin_44684139/article/details/107847282 ↩︎
https://www.jianshu.com/p/f90775d91df5 ↩︎