步骤一:Jetson Nano安装ROS步骤,及相关错误分析

本文详述了在Jetson Nano上安装ROS Melodic的全过程,包括更换为清华源、添加ROS软件源、安装依赖、解决rosdep update超时等问题,整个过程大约15分钟,适合一般网络条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装系统为:ubantu 18.04---ros melodic

硬件:jetson nano b01,联想拯救者r7000p

内存卡:SAMSUNG 128G

最后一次更新2022/10/5

亲测!一般网络情况下,一共15分钟安装完整,且无报错!!

ROS MELODIC

首先更换为清华源,jetson nano与双系统的ubantu不同,双系统通过(设置 -软件和更新-下载自 )更改为国内清华源。jetsonnano通过修改source.list具体代码步骤如下:

(1)备份source.list

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

(2)更改软件源

sudo gedit /etc/apt/sources.list

将其中内容全部删除,修改为:

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe

由于nano为ARM架构,双系统为x86/x64架构,如果在双系统上安装ROS,修改为:

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse


(3)进行软件更新

sudo apt-get update

至此jetson nano部分配置完毕,接下来进行ros安装。

(4)添加ROS软件源

将下面这条命令复制到ubuntu的终端执行

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'

(5)添加密匙

将下面这条命令复制到ubuntu的终端执行

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

出现如下界面,则表示成功

 (6)更新ros软件源

将以下命令复制到ubuntu的终端执行(在这里顺便说一下,如果用wifi更新慢或者失败的话,切换至手机热点,再执行下面的命令试一下)

sudo apt update

如果成功会出现如下界面

 (7)安装!!

sudo apt install ros-melodic-desktop-full

输入后会出现如下界面

下载完成后出现如下界面(图片下载自别处,有些许不同)

(8)初始化rosdep

首先安装依赖:

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

基本可以确定,这一步很重要。原版出现问题的如下( sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool)后来发现存在依赖,无法进行安装。不理解可以参看官网教程melodic/Installation/Ubuntu - ROS Wiki新版如上。

依赖安装完毕,输入终端如下:

 sudo rosdep init

错误1:找不到命令

输入:

sudo apt install python-rosdep

(如果还是一样的报错,试试sudo apt install python-rosdep2)

错误2:ERROR: cannot download default sources list from:https :

//raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.listWebsite may be down.

输入以下命令:

sudo gedit /etc/hosts

然后在打开的hosts文件中添加如下的内容,然后保存退出

199.232.28.133 raw.githubusercontent.com

其中橙色部分不固定,域名一直在变化,登陆IPAdress网站https://www.ipaddress.com/输入raw.githubusercontent.com查询到真实IP地址,替换橙色部分。

错误3:ERROR: default sources list file already exists:

/etc/ros /rosdep/sources.list.d/20-default.listPlease delete if you wish to re-initialize

输入以下命令:

  sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

到这里如果再输入sudo rosdep init命令试试,应该就会出现了之前介绍的我们想要的界面了

(9)rosdep update

终端输入:
 

rosdep update

**************************************************************************************************************

(10),连接网络超时,具体应该是github与国内连接不稳定等原因。默认连接时间是15s,曾经改过好几分钟,该不成功就是不会成功,具体成功方法如下,无视网络原因。

 (1)修改rosdep下载资源的脚本文件:/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py

sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py

把以下行添加到脚本中的download_rosdep_data()函数中,以应用代理服务:

url="https://ghproxy.com/"+url

 (2)用同样的方法修改/usr/lib/python2.7/dist-packages/rosdistro/__init__.py

sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/__init__.py

里面的DEFAULT_INDEX_URL参数,如下:

DEFAULT_INDEX_URL = 'https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml'

(3)以下4个文件中也使用了“raw.githubusercontent.com”网址,同样的方法把“GitHub Proxy 代理加速”添加到网址前:

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

(4)在 /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py

 sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 

的第204行添加如下代码:

gbpdistro_url = "https://ghproxy.com/" + gbpdistro_url

 接下来再试一次

rosdep update

不出意外应该就成功了。大概需要三五分钟时间,会下载一些东西。

*************************************************************************************************************

(10)ros编译环境配置

终端输入:

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

使编译环境生效。

 (12)最后一步ROS的测试

输入:

roscore

如果可以正常运行那么就okk了,如果依旧报错,再输入一遍:

sudo apt install ros-melodic-desktop-full

可能是某些东西没下全的原因,应该还会下载点东西,需要你输入y确认。再roscore一下应该就有了。至此ROS下载成功。

LD_LIBRARY_PATH=/opt/ros/indigo/lib

LD_LIBRARY_PATH=/opt/ros/indigo/lib

文章摘自:CSDN的博主和古月居的公众号,原链接如下。图片也均采自链接。亲测成功。

(4条消息) rosdep update 超时失败2021最新解决方法_WGH无疆的博客-CSDN博客_rosdep update

详细介绍如何在ubuntu20.04中安装ROS系统

melodic/Installation/Ubuntu - ROS Wiki

### 在 Jetson Nano安装 ROS 的方法 对于希望在 Jetson Nano 上部署 ROS 应用程序的开发者来说,考虑到该设备预装的操作系统以及硬件资源限制,选择合适的 ROS 版本至关重要。 #### 推荐方案:基于官方镜像安装 ROS Melodic 鉴于 Jetson Nano 预装了 Ubuntu 18.04 和系列开发工具包(如 JetPack, CUDA, cuDNN, OpenCV),最简便的方法是在此基础上安装适用于 Ubuntu 18.04 的 ROS Melodic。为了节省存储空间并提高性能效率,建议仅安装必要的软件包而非完整的桌面环境[^2]。 具体操作如下: 更新现有系统的软件仓库索引: ```bash sudo apt update && sudo apt upgrade -y ``` 设置 ROS 软件库密钥: ```bash sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add - ``` 再次刷新本地缓存以包含新添加的 ROS 存储库: ```bash sudo apt update ``` 根据需求选择要安装的具体 ROS 组件;为了避免不必要的依赖项增加负担,推荐最小化安装选项 `ros-melodic-robot` 或者针对特定功能模块进行单独安装而不是整个桌面版[^3]: ```bash # 最小化安装示例命令 sudo apt install ros-melodic-robot ``` 初始化 rospkg 环境变量以便于后续使用: ```bash source /opt/ros/melodic/setup.bash ``` 验证安装是否成功可以通过查看已安装版本号来确认: ```bash rosversion -d ``` #### 关键注意事项 需要注意的是,尽管可以考虑通过升级到更高版本的 Linux 发行版(例如 Ubuntu 20.04)进而支持最新代的 ROS 2 Foxy Fitzroy,但这可能引入额外兼容性挑战,并且不定能显著改善实际应用体验[^1]。此外,由于 Jetson Nano 只有 4GB RAM,在执行复杂任务时容易遇到内存不足的问题,因此应谨慎规划所加载的应用和服务数量,必要时可借助外部存储扩展或优化算法降低资源消耗[^4]。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

doki2022

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值