个人认为的对初学者最友好的ROS开发环境搭建

系统首选Ubuntu 16.04

选16.04的原因不是为了ROS,单纯是为了丰富的Qt库,这部分会在后面详述。14.04应该也是可以的,但笔者没有来得及证实,后面再与大家分享。就目前其他方面体验来讲,16.04是要强于14.04的,当然,仅个人观点。ROS的各个版本也没有太明显的使用区别,目前对笔者而言,用哪个版本都行,都没有致命的缺陷。
曾经向往Melodic(18.04版本)的PCL1.8,结果发现GPU模块和CUDA模块都是缺失的,失望而归。

ROS的安装

ROS的安装方式就不赘述了,网上有一万篇博客,流程大概就是添加源->添加密钥->update->full安装->rosdep init->echo,讲一些遇到的问题吧。
对于x86架构的处理器来说,国内源没有问题,可以显著提高安装速度,一般也不会遇到太大的问题。而对于ARM架构的处理器(比如TX2)来说,安装ROS的时候尽量不要换源,就使用默认源就好,不然可能会遇到各种问题,慢点是慢点,好在稳定。
另一个容易出现的问题就是rosdep init的时候,有时候会出现无法链接的问题。问题所在就是要拉取的文件是在国外服务器上的,因此连接会极不稳定。解决方案也有很多种:
1.多试几次,锲而不舍;
2.切换网络多试几次,锲而不舍;
3.安装ca-certificates,重载ssl certs;

sudo apt-get install ca-certificates
sudo c_rehash /etc/ssl/certs
sudo -E rosdep init

4.改hosts文件(存疑);
5.如果你会科学上网,以上当我没说。
一般来说,这个问题会被你不知道通过什么方式莫名其妙地解决掉。

QT的安装

其实这才是重头戏,对于ROS开发而言,一个好的IDE是必不可少的,RobowareStudio是专门为ROS而生的,在x86平台上也很不错,只是自动填充代码的功能不如QT,但在ARM平台上,RobowareStudio连安装都是问题。
经过一段时间的摸索,我发现命令行安装的qt_plugin_ros真是初学者的福音,兼顾QT本身与ROS开发。在我看来它有两大优势,第一个当然是支持ROS,第二个就是QT版本是5.9.1,满足大部分QT库的需求。其他安装方式难以同时满足这两个条件。

sudo add-apt-repository ppa:levi-armstrong/qt-libraries-xenial
sudo add-apt-repository ppa:levi-armstrong/ppa
sudo apt-get update && sudo apt-get install qt57creator-plugin-ros

这个levi-armstrong的PPA才是保证上面两大优势的根源所在,让我们打开源网址看一下。
QT全家福
整个QT都圆满了好吧,还要啥自行车!14.04版本应该只需要把Xenial改成Trusty就行,暂时还没试过,理论上可行。
这样安装好的就是5.9.1版本的QT了,并不是5.7的,不用担心。而qt5-default安装的是5.5.1版本的,有点过低了。同时还支持ROS开发,岂不美哉。
想安装各种QT库的话只需要在命令行install就行,会安装到/opt/qt59的目录下。

sudo apt-get install qt59[Tab]

总结

这种开发环境搭建方法的优势非常明显,用QT强大的代码编辑功能来开发ROS能省很多的力气,而且levi-armstrong的ppa源里预编译了绝大部分的QT库,包括charts、serialport、serialbus等,可以用命令行直接安装,避免了有时候源代码无法编译通过的问题。但也有问题存在,QT被安装在了/opt/qt59目录下,而ROS会在/usr/bin里安装5.5.1版本的qmake和相关库,在调用的时候会出现一些问题,这些会在后面讨论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值