|
【技术讨论】
有关RK3308启用ROS模块编译的坑
发表于 2020-11-11 15:42:04
浏览:5677
|
回复:1
打印
只看该作者
[复制链接]
楼主
刚接触交叉编译和ROS,记录一下给RK3308-CC-PLUS板子启用ROS模块后交叉编译遇到的问题和解决的过程。
1、
按照这篇博客的步骤打开启用ROS模块,make menuconfig ->Target packages -> rockchip BSP packages中没有找到“ros BSP package”选项启用。
···通过help发现这个条目依赖于“BR2_PACKAGE_PYTHON”和“BR2_PACKAGE_BOOST”,于是把这两个都打开,ros的条目顺利出现。
2、
执行make,很快报错中止,错误信息为"cannot import name lru_cache".
在编译过程会给中buildroot自带的python2.7下载依赖。其中下载了pyparing包为最新的3.0.0b1版,里面的util.py文件使用了from functools import lru_cache ,这是python3才加入的特性,所以总是导致无法继续。
手动下载旧版的 pyparsing-2.4.7 ,把他解压后放到output/host/lib/python2.7/site-packages文件夹,并在这个文件夹内的setuptools.pth添加包的相对链接,再次执行make,编译顺利通过。
|
|