ROS学习(开篇)Ubuntu16.04安装ROS Kinetic详细教程

ROS学习(开篇)Ubuntu16.04安装ROS Kinetic详细教程之前关于ROS学习的博客,都是在win10虚拟机环境下运行的ubuntu18.04系统,对应的ros版本为melodic。由于电脑性能不好,运行导航仿真感觉卡顿,所以我把家里的台式机搞成了ubuntu16.04和win10双系统。ubuntu16.04系统的安装网上很多资料,本篇只是记录下ros的安装步骤,仅供参考。本篇文章只解决我遇到的错误,若不能解决你的错误,请自行百度,哈哈,网上的资料还是很多的。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺


前言

之前关于ROS学习的博客,都是在win10虚拟机环境下运行的ubuntu18.04系统,对应的ros版本为melodic。由于电脑性能不好,运行导航仿真感觉卡顿,所以我把家里的台式机搞成了ubuntu16.04和win10双系统。ubuntu16.04系统的安装网上很多资料,本篇只是记录下ros的安装步骤,仅供参考。

一、添加ROS软件源(sources.list)

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'

二、添加密钥

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F42ED6FBAB17C654

三、更新apt功能包列表

sudo apt-get update

四、安装ROS

sudo apt-get install ros-kinetic-desktop-full

五、初始化 rosdep

执行如下命令:

sudo rosdep init

若出现错误,如图:
在这里插入图片描述
针对此错误,我尝试过修改/etc/hosts文件,也常试过修改网络为手机热点,但是问题依然存在。

最终解决方法如下:
(1)修改/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py文件
(2)修改/usr/lib/python2.7/dist-packages/rosdistro/_init.py文件
(3)修改如下文件

/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 36行
/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py 72行
/usr/lib/python2.7/dist-packages/rosdep2/rep3.py 39行 
/usr/lib/python2.7/dist-packages/rosdistro/manifest_provider/github.py 68行 119行

具体修改方法,参考评论(修改点1、2、3),写在这里,不能发布,哈哈,绝了。。。

修改完成后,再次执行如下命令:

sudo rosdep init

初始化成功,如图:
在这里插入图片描述
初始化成功后,执行如下命令:

rosdep update

若出现超时错误,如图:
在这里插入图片描述
解决方法,如下:
(1)打开/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 文件

第204行添加如下代码,参考评论(修改点4)

(2)打开/usr/lib/python2.7/dist-packages/rosdistro/__init__.py

在对应处,按照上述方法进行修改,参考评论(修改点5)

最后再次执行如下命令:

rosdep update

最后发现,问题解决了,如图:
在这里插入图片描述

六、将ROS环境变量添加到.bashrc文件中

此举是为了每次打开新的终端时可以自动配置好 ros 相关环境。

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

七、安装rosinstall等工具

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

八、检查ROS是否安装成功

如果安装成功,可以看到ros版本及路径等信息,命令如下:

export | grep ROS

在这里插入图片描述

我们也可以启动小乌龟来检查ROS是否安装成功,打开三个终端,分别输入如下命令:

roscore
rosrun turtlesim turtlesim_node 
rosrun turtlesim turtle_teleop_key 

效果如下:
在这里插入图片描述

九、卸载ROS

sudo apt-get purge ros-*
sudo rm -rf /etc/ros

十、总结

本篇文章只解决我遇到的错误,若不能解决你的错误,请自行百度,哈哈,网上的资料还是很多的。最后,如果顺便解决了你的问题,请大佬们给小弟点个赞,谢谢啦,只为刷刷排名,哈哈。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197821.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea和eclipse哪个区别_第一责任和主要责任的区别

    idea和eclipse哪个区别_第一责任和主要责任的区别IDEA中“newProject”就eclipse的“workspace”,而“newModule”才是创建一个工程,这是要注意的一点。IDEA不会自动编译和加载CLASS,ECLIPSE是自动的,IDEA可以通过ModeEclipse插件来实现自动加载和编辑ClassIDEA编辑的文件是自动保存的,不能设置为手动保存,这个和Eclipse差别最大,很多人

    2022年8月29日
    3
  • MySQL经典练习题及答案,常用SQL语句练习50题

    表名和字段–1.学生表 Student(s_id,s_name,s_birth,s_sex)–学生编号,学生姓名,出生年月,学生性别 –2.课程表 Course(c_id,c_name,t_id)––课程编号,课程名称,教师编号 –3.教师表 Teacher(t_id,t_name)–教师编号,教师姓名 –4.成绩表 Score(s_id,c_id,s_score)–学生编号,课程…

    2022年4月8日
    39
  • ArcGIS server 10.2安装教程详细版

    ArcGIS server 10.2安装教程详细版详细讲述arcgisserver10.2的安装教程。默认已经安装arcgisDesktop10.2。提供一个arcgisserver下载地址:链接:https://pan.baidu.com/s/1iXol6v3RiqjU2MLvbnwNFA提取码:7fzf(失效了请和我说)一、所需文件1.ArcgisServer10.2安装文件。2.ArcgisSer…

    2022年5月25日
    62
  • navicat激活码linux[最新免费获取]

    (navicat激活码linux)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月31日
    75
  • LNK2001: 无法解析的外部符号的几种情况

    LNK2001: 无法解析的外部符号的几种情况errorLNK2001:无法解析的外部符号无法解析几种情况:1>MSVCRT.lib(MSVCR90.dll):errorLNK2005:_printf已经在libcurl.lib(pqueue.obj)中定义1>MSVCRT.lib(MSVCR90.dll):errorLNK2005:_fprintf已经在libcurl.lib(pem_lib.o…

    2022年6月28日
    34
  • 微信开发-40029 invalid code「建议收藏」

    微信开发-40029 invalid code「建议收藏」微信开发过程中,根据回调code获取snsapi_userinfo的时候,遇到了错误提示{“errcode”:40029,”errmsg”:”invalidcode”},后面发现是因为自己内部服务调试过程中,将该code使用了两次,导致提示该错误。所以,如果有谁遇到了该提示,请务必检查是否code被使用了两次。

    2022年4月30日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号