2. 开发环境搭建与系统烧录:JetPack SDK安装、SDK Manager使用、系统镜像烧录、首次启动配置与网络设置
说实话,很多做Jetson项目的朋友,第一步就卡住了。不是硬件问题,而是环境没搭对。我见过太多人拿着开发板,折腾一整天系统都起不来。今天咱们就把这事彻底捋清楚。
2.1 JetPack SDK:到底是个什么东西?
JetPack SDK,说白了就是NVIDIA给Jetson系列准备的一整套开发工具包。它不只是个系统镜像,里面还包含了CUDA、cuDNN、TensorRT这些深度学习必备的库。我个人习惯把它理解成「Jetson的瑞士军刀」——你需要的几乎所有东西,它都给你打包好了。
为什么要用JetPack?因为自己手动装这些库,版本匹配问题能让你崩溃。我在项目中遇到过客户自己装CUDA,结果和TensorRT版本不兼容,整整浪费了两天时间。用JetPack,这些坑就绕过去了。
2.2 SDK Manager:你的装机好帮手
SDK Manager是NVIDIA官方提供的图形化工具。你想想看,如果每次烧录系统都要敲命令行、配环境,那得多痛苦?SDK Manager把这些步骤都简化了。
安装步骤:
- 去NVIDIA官网下载SDK Manager(需要注册账号,免费的)
- 在Ubuntu主机上安装(注意:SDK Manager只支持Ubuntu系统)
- 用你的NVIDIA开发者账号登录
使用流程:
- 选择你的Jetson型号(比如Orin NX、Xavier NX等)
- 选择JetPack版本
- 勾选需要安装的组件(CUDA、cuDNN、TensorRT等)
- 选择烧录方式:直接烧录到开发板,或者生成镜像文件
为什么会这样设计?因为不同项目需要的组件不一样。比如你只做边缘推理,可能只需要TensorRT;如果你还要做模型训练,那CUDA和cuDNN也得装上。
2.3 系统镜像烧录:手把手教你
烧录系统,听起来高大上,其实就几步。但每一步都有坑,我一个个说。
准备工作:
- 一台Ubuntu主机(推荐16GB以上内存)
- Jetson开发板
- USB数据线(质量要好,我吃过亏)
- 电源适配器(原装的最好)
- 网线(用于首次网络配置)
烧录步骤:
- 将Jetson开发板通过USB连接到主机
- 给开发板上电(先别按电源键)
- 在SDK Manager中点击「Flash」按钮
- 按住开发板上的「Force Recovery」按钮不放
- 按一下电源键,然后松开「Force Recovery」按钮
- SDK Manager会自动识别设备,开始烧录
整个过程大概10-20分钟,取决于你的USB速度和镜像大小。我习惯烧录时在旁边放杯咖啡,等着就行。
2.4 首次启动配置:别急着用
系统烧录完成后,第一次启动需要做一些配置。这一步很多人会忽略,结果后面各种问题。
启动流程:
- 拔掉USB线,接上显示器和键盘鼠标
- 上电启动,会进入Ubuntu的初始化界面
- 设置用户名和密码(记住,后面SSH要用)
- 选择时区、语言等
- 配置网络连接
2.5 网络设置:让Jetson连上网
网络配置是重中之重。因为后面很多操作都依赖网络,比如安装依赖包、下载模型等。
有线网络:
- 插上网线,系统一般会自动获取IP
- 用
ifconfig或ip addr查看IP地址 - 如果没获取到,检查网线或路由器DHCP设置
无线网络:
- 点击右上角网络图标
- 选择你的WiFi,输入密码
- 如果连不上,检查WiFi频段(Jetson有些型号只支持2.4GHz)
静态IP设置(推荐):
# 编辑网络配置文件
sudo nano /etc/netplan/01-netcfg.yaml
# 示例配置
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
# 应用配置
sudo netplan apply
为什么要设静态IP?因为开发过程中你经常需要SSH连接Jetson,动态IP每次重启都可能变,很麻烦。设成静态IP,一劳永逸。
2.6 验证环境:确保一切正常
配置完成后,别急着开始开发。先验证一下环境是否正常。
验证命令:
# 查看系统信息
uname -a
# 查看CUDA版本
nvcc --version
# 查看TensorRT版本
dpkg -l | grep tensorrt
# 测试GPU是否正常工作
nvidia-smi
如果这些命令都能正常输出,恭喜你,环境搭建成功了。如果报错,别慌,多半是版本匹配问题。检查一下JetPack版本和你的Jetson型号是否对应。
2.7 总结与下一步
环境搭建这块,说难不难,说简单也不简单。关键是要细心,每一步都确认无误再往下走。我见过太多人因为跳过了某个步骤,后面花几倍的时间来排查问题。
好了,环境搭好了,下一章咱们就开始真正的开发了。到时候我会教大家如何用Jetson跑第一个深度学习模型。准备好了吗?