ROS学习01-NVIDIA JETSON TX2 使用Jetpack4.4刷机指南

ROS学习01-NVIDIA JETSON TX2 使用Jetpack4.4刷机指南

写在前文
最近入手了一台NVIDIA JETSON TX2想做个机器人小车,刚拿到板子的时候发现他上面自带安装的是Ubuntu18.04,安装好ROS,当使用SLAM时,发现没有OpenCV和CUDA,安装了许久都不行,噗,整个人搞吐了,于是乎给这玩意儿刷个系统,一看官网上有最新的刷机包,就决定入坑这个新的刷机包,注Jetpack3系列和Jetpack4系列刷机略有不同,如果想安装之前版本的可以在英伟达官网上查看教程
先决条件
PC一台,在虚拟机上安装好Ubuntu16.04做主机用,建议分配80G磁盘空间,至少分配8G内存(这是第一个坑,后面安装JetPack会提示至少需要8G内存,第一次安装失败在一台2G内存的Ubuntu上,忽视了该要求,能把TX2系统刷到开机,但是读不出鼠标无法继续设置!扩容后可越过该坑,无语!第二次分配了40个G的磁盘空间,提示磁盘空间不足,整个人已气炸)(一定要Ubuntu16.04或者Ubuntu14.04,其余的版本不行!!!)
Jetson TX2开发板一块;
显示器一台,HDMI转接线1根(TX2连接显示器),USB转接线及Hub各一个,鼠标键盘各一个。
开始刷机
首先在官网https://developer.nvidia.com/embedded/jetpack下载Jetpack4.4
在这里插入图片描述
下载完名字大概叫这个玩意儿sdkmanager_1.2.0-6733_amd64.deb,之前版本的可能是什么.run文件,看网上其它人用JetPack3.1刷机就是.run文件
下载完成后把这个玩意儿拖入你的建好的Ubuntu16.04,拖不进去就安装个open-vm-tools

sudo apt-get install open-vm-tools

千万注意如果你用Ubuntu18.04是刷不好的!
在这里先给你的Ubuntu16.04换个源吧,后面安装的CUDA什么的不换源下载半年也下不好

sudo  cp   /etc/apt/sources.list   /etc/apt/sources.list.bak
sudo  chmod  +w  /etc/apt/sources.list
sudo  vim   /etc/apt/sources.list
# 阿里源
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
#保存
sudo apt update
sudo apt upgrade

如果sudo apt update出现Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)

#你TM可能点了更新或者正在安装其它什么
#给apt解锁
sudo rm /var/lib/apt/lists/lock
#还不行就重启然后再执行一次

接下来看看你下的sdkmanager_1.2.0-6733_amd64.deb在哪个目录下
进入那个目录,在那个目录下面执行

#sudo apt install ./sdkmanager-[version].[build#].deb 
sudo apt install ./sdkmanager_1.2.0-6733_amd64.deb
#安装完成后启动 可能要等一会 不要急
sdkmanager
#可以看官方文档
https://docs.nvidia.com/sdk-manager/download-run-sdkm/index.html#download

打开后记得注册账号,这样才能往下走
在这里插入图片描述
选择你的设备型号和要下载的东西,这里可以选择版本
在这里插入图片描述
下一步,勾选Download now, install later,继续下一步。
在这里插入图片描述
如果你不想把你的系统再刷一遍,把这个地方勾掉,就可以只刷入CUDA和其它的了
在这里插入图片描述
这前面的下载你可以找个网速快的地方,不连TX2也行,后面弹出界面先跳过,等连上TX2后重新执行sdkmanager重新点一下前面的步骤就行了,下载好一次后后面不用下载
下载完成后如果连TX2
usb-c端连接tx2,usb端连接主机(host也就是笔记本),使用开发板配的黑色(带绿色标识)的usb线连接开发板和host,将host(笔记本)和jetson tx2用网线分别连接在同一个路由器上按continue进入 step 3.
然后进入刷机准备:
a.确认已经连接电源适配器且处于关机状态(自己购置usb拓展,显示器可以使用VGA转HDMI本人使用绿联的转接口没问题和鼠标都连接好,后边需要需要鼠标和键盘操作)
b.按一下power键开机(按下后松开,稍微有一定的按键时长)
c.按下REC(RECOVERY FORCE)不要松开
d.再按下RST(reset按下松开,稍微有一定的按键时长)
e.REC保持两秒后松开

#上面操作正确你的虚拟机会弹出连接usb
#在Ubuntu16.04上查看是否连接到TX2
lsusb

此时会安装系统到jetson tx2(系统安装可以选择中文,不影响使用) 等安装完后会继续安装下图所示(不要点等系统安装完换软件源之后再点,安装系统过程中会弹下图窗口)等待系统安装完成后在jetson tx2上操作先更换软件源(不更换会非常慢)
安装完HOST COMPONENTS后,大约进度45.45%左右,TX2会开机,重新执行1.TX2开机的步骤,此时不需要选择WIFI。
这里当你的TX2开机了先把鼠标键盘连接到你的TX2上,一步步点,安装完成后进入英伟达的炫酷桌面
然后这里你要做两部,先更换TX2的源,和上面的更换Ubuntu16.04的有些不一样,这是arm架构的,阿里源不太行!

#为防止误操作后无法恢复,先备份原文件sources.list
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 
#删除或注释掉原Ubuntu的源 更换为清华的源,亲测可用
sudo echo >  /etc/apt/sources.list 
sudo vim /etc/apt/sources.list 

加入清华源

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

#更新源
sudo apt-get update

然后查看ip

#找到eth0的IP
ip addr

TX2完全开机后,在host弹出的窗口处输入TX2的用户名和密码注意,此时若Host与TX2在同一局域网,默认填写的IP地址和TX2使用ifconfig查看结果是一致的。

在这里插入图片描述
如果IP没问题就会继续安装了,仔细看我下面这张图如果类似就没问题。
在这里插入图片描述
然后等差不多一个半小时就安装成功了
完成测试
查看cuda版本

nvcc -V
#输出
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Oct_23_21:14:42_PDT_2019
Cuda compilation tools, release 10.2, V10.2.89

如果有如下错误
-bash: nvcc: command not found
先检查你cuda是否安装成功

cd /usr/local/cuda

如果有东西的话

export LD_LIBRARY_PATH=/usr/local/cuda/lib
export PATH=$PATH:/usr/local/cuda/bin

查看tensorrt版本

ros@ros:/usr/local/cuda$ python3
Python 3.6.9 (default, Apr 18 2020, 01:56:04) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorrt
>>> tensorrt.__version__
'7.1.3.0'
>>> exit()

参考链接
https://blog.csdn.net/Collin_D/article/details/106631411
https://blog.csdn.net/xinxin_Tian/article/details/104756866

猜你喜欢

转载自blog.csdn.net/qq_40695642/article/details/107936625