有关RK3308启用ROS模块编译的坑

刚接触交叉编译和ROS,记录一下给RK3308-CC-PLUS板子启用ROS模块后交叉编译遇到的问题和解决的过程。
 

1、menuconfig中没有ROS选项
按照这篇博客的步骤打开启用ROS模块,make menuconfig ->Target packages -> rockchip BSP packages中没有找到“ros BSP package”选项启用。

通过help发现这个条目依赖于“BR2_PACKAGE_PYTHON”和“BR2_PACKAGE_BOOST”,于是把这两个都打开,ros的条目顺利出现。

2、最坑的:cannot import name lru_cache
执行make,很快报错中止,错误信息为"cannot import name lru_cache".

在编译过程会给中buildroot自带的python2.7下载依赖。其中下载了pyparing包为最新的3.0.0b1版,里面的util.py文件引入了

from functools import lru_cache

这是python3才加入的特性,所以总是导致无法继续。在python2中可以使用functools32包实现,但在这里无法解决问题,
手动下载旧版的   pyparsing-2.4.7 ,把他解压后放到output/host/lib/python2.7/site-packages文件夹,并在这个文件夹内的setuptools.pth添加包的相对链接,再次执行make,编译顺利通过。(图片是全部编译完成后截的,本来文件夹中只有少数几个包)

pyparsing下载地址:   https://pypi.org/simple/pyparsing/

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值