本文主要是介绍arm x86 交叉编译 ROS 项目程序最简单的方式及踩坑完整经验 ,亲测可以运行简单和复杂的 ROS 项目 Jetson Xavier NX 3588,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需求: ROS 程序源代码每次在 NX 或者 RK3588 编译很慢,并且有源代码泄露的风险,需要在x86 intel 的笔记本 ubuntu 的环境交叉编译 ROS 程序, 之前试过传统的ros 项目交叉编译方式,特别复杂依赖很多,并且试了很久都不成功,这次尝试了通过 Docker 移植的方案,很简单也比较顺利。
安装qemu
sudo apt install qemu qemu-user-static
安装docker.io 版本
sudo apt install docker.io
添加到docker组权限
sudo gpasswd -a $USER docker
newgrp docker
下载 docker 环境 安装docker ubuntu arm64版本
docker pull --platform=arm64 ubuntu:20.04
如果 pull 卡住了,通过下面的步骤解决,可能需要重启电脑:
第一步:新建或编辑daemon.json
vi /etc/docker/daemon.json
第二步:daemon.json中编辑如下
{
"registry-mirrors": [ "https://9cpn8tt6.mirror.aliyuncs.com"]
}
第三步:重启docker
sudo systemctl daemon-reload
systemctl restart docker.service
第四步:执行dock
这篇关于arm x86 交叉编译 ROS 项目程序最简单的方式及踩坑完整经验 ,亲测可以运行简单和复杂的 ROS 项目 Jetson Xavier NX 3588的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!