Jetson Xavier NX 内核编译、源码编译流程

注明:感谢网友提醒,我当时买的时候nx套件还没开售,因为核心板兼容b01,先买了核心板和b01的板子合在一起用的,所以本文是基于jetson xavier nx模块 + B01的,社友请知悉。

本文主要讲述,基于 Jetson Xavier NX 开发者套件的系统烧录流程。

What is Jetson Xavier NX

    NVIDIA® Jetson Xavier™ NX 是体型超小的AI超级计算机,适用于嵌入式系统和边缘系统。
    高达 21 TOPS 加速计算能力,可以并行运行现代神经网络并处理来自多个高分辨率传感器的数据。
    Jetson Xavier NX 是生产就绪型产品,可支持所有热门 AI 框架。

1、官方固件下载

英伟达官网L4T 下载页面下载页面 给出了系列的开发下载资源,对于 Jetson Xavier NX 系统烧录,我们暂时关注两个:

(1)Sample Root Filesystem:点击跳转至官方下载链接

对应文件:“Tegra_Linux_Sample-Root-Filesystem_R32.4.2_aarch64.tbz2”

(2)L4T Driver Package (BSP):点击跳转至官方下载链接

对应文件:“Tegra186_Linux_R32.4.2_aarch64.tbz2”

2、虚拟机环境准备
对于window用户,可以通过VMware安装虚拟机Ubuntu系统,我的系统配置:
(1)ubuntu 16.04LTS 带操作界面版本
(2)操作系统类型:64位
(3)内存:3.8 GiB
(4)处理器:Intel® Core™ i7-8700K CPU @ 3.70GHz × 4
(5)磁盘:60 GB
注1:系统版本使用ubuntu16.04的比较稳定,磁盘空间不要给的太小,最好 60GB 以上,否则后期进行内核剪裁等其他操作文件较多时,会硬盘空间不足,导致编译失败。
注2:虚拟机如何安装网上有大量教程,也比较简单,这里不做赘述了,您可以自行搜索安装。

3、Ubunut中建立自己的工作空间文件夹,便于统一管理相关文件。

mkdir ~/workspace/xa_nx/linux -p

4、make sure “qemu-user-static” package 在你安装的虚拟机系统中已经安装,如果没有apt安装下(交叉编译相关):

sudo apt-get install qemu-user-static

5、拷贝 “1” 中下载的固件到工作目录下

zhong@zhong:~/workspace/xa_nx/linux$ ls
Tegra186_Linux_R32.4.2_aarch64.tbz2  Tegra_Linux_Sample-Root-Filesystem_R32.4.2_aarch64.tbz2

6、解压固件并构建文件系统
(1)解压bsp

zhong@zhong:~/workspace/xa_nx/linux$ tar xf Tegra186_Linux_R32.4.2_aarch64.tbz2
zhong@zhong:~/workspace/xa_nx/linux$ ls
Linux_for_Tegra  Tegra186_Linux_R32.4.2_aarch64.tbz2  Tegra_Linux_Sample-Root-Filesystem_R32.4.2_aarch64.tbz2

(2)解压并构建文件系统

zhong@zhong:~/workspace/xa_nx/linux$ cd Linux_for_Tegra/rootfs/
zhong@zhong:~/workspace/xa_nx/linux/Linux_for_Tegra/rootfs$ sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R32.4.2_aarch64.tbz2
zhong@zhong:~/workspace/xa_nx/linux/Linux_for_Tegra/rootfs$ ls
bin  dev  etc  home  lib  media  mnt  opt  proc  README.txt  root  run  sbin  snap  srv  sys  tmp  usr  var

(3)执行 apply_binaries.sh

zhong@zhong:~/workspace/xa_nx/linux/Linux_for_Tegra/rootfs$ cd ../
sudo ./apply_binaries.sh

等待执行结果,最后会有个打印:

...
Installing extlinux.conf into /boot/extlinux in target rootfs
Success!

完成以上所有步骤就可以准备烧录了。

7、烧录系统
(1)Jetson Xavier NX (当前市场上拿到的只有emmc版本)有以下对应:
Module Part Number: Jetson Xavier NX P3668-0001
Value of $(BOARD): p3449-0000+p3668-0001-qspi-emmc
则对应的系统烧录命令为: sudo ./flash.sh p3449-0000+p3668-0001-qspi-emmc mmcblk0p1

(2)使用usb连接线连接 虚拟机 和 Jetson Xavier NX

(3)在核心板下方有个名为 “FC_REC” 的引脚 ,其可以控制系统上电后进入recovery模式,使用杜邦线或者跳线帽将其和相邻的GND引脚短接。

(4)使用DC 5V给板子上电

(5)在虚拟机环境下输入lsusb命令,可以查看到:

zhong@zhong:~/workspace/xa_nx/linux/Linux_for_Tegra$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 003 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 003 Device 054: ID 0955:7020 NVidia Corp.      <-------------- 这里就是 nx板子
Bus 003 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

6)执行烧录命令: sudo ./flash.sh p3449-0000+p3668-0001-qspi-emmc mmcblk0p1

zhong@zhong:~/workspace/xa_nx/linux/Linux_for_Tegra$ sudo ./flash.sh p3449-0000+p3668-0001-qspi-emmc mmcblk0p1

接下来耐心等待,大约20-30分钟,系统会自动擦除emmc,并将固件写入。

最后可以观察到如下打印:

...
*** The target t186ref has been flashed successfully. ***
Reset the board to boot from internal eMMC.

(7)将 “FC_REC” 引脚和GND短接的线去掉,拔掉 DC5V,重新上电,接上HDMI和鼠标键盘。

(8)系统会自动进入配置页面,要求接受一些协议,初始化用户名什么的,正常配置下即可。

(9)之后就可以正常使用系统了。

** 这些也可以参考官方英文文档: Quick Start Guide

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Jetson Xavier NX是一款高性能的边缘计算设备,拥有强大的计算能力和AI推理能力,被广泛应用于智能安防、智能制造、自动驾驶等多个领域。Jetson Xavier NX源码编译是指对Jetson Xavier NX的操作系统和应用程序进行编译编译的过程需要使用一些工具和指令,如GCC编译器、make指令、CMake工具等。 首先,需要下载Jetson Xavier NX源码,可以从官方网站上下载。然后,需要安装支持编译的软件,如make和CMake。在编译之前,需要根据实际需要选择编译的目标,例如编译内核、驱动程序和应用程序等。针对不同的目标,可能需要不同的编译方式和工具。 在编译过程中,需要按照一定的顺序依次执行编译指令,例如配置编译环境、编译内核编译驱动程序、编译应用程序等。这些指令需要仔细阅读文档,并按照文档中的指示进行操作,以确保编译的成功。 Jetson Xavier NX源码编译的过程较为繁琐,需要有一定的编程知识和经验,并且需要耐心和细心,以确保编译的成功。编译完成后,可以在设备上安装和运行编译成功的程序,以满足实际需求。 ### 回答2: 《Jetson Xavier NX源码编译.pdf》是一份关于Jetson Xavier NX平台源代码编译的指南文档。该文档主要包括了Jetson Xavier NX平台的硬件特性、软件架构、源码下载、环境配置和编译指导等内容,是进行Jetson Xavier NX平台软件开发的重要参考资料。 文档中提到了Jetson Xavier NX平台的硬件特性,包括具有256核心NVIDIA GPU的AI超级计算机、6核心ARM A57 CPU、8GB LPDDR4x RAM、NVMe M.2 SSD和Gigabit以太网等。同时,文档还介绍了JetPack软件套件的架构和软件组件,包括CUDA、cuDNN、TensorRT、VisionWorks等工具箱。 在源代码的下载方面,文档提供了Jetson Xavier NX平台的官网链接和用户指南,并介绍了源代码的下载方式和解压方式,同时还提供了下载完成后相关文件夹的解释。 在环境配置方面,文档详细介绍了Ubuntu 18.04的安装和配置,包括软件源修改、系统升级和安装所需依赖库等步骤。 在编译指导方面,文档提供了基于Makefile的编译方法和CMakeLists.txt的编译方法,对于不同的开发需求,文档也提供了分步骤的详细编译指导,使得开发者能够快速上手开始开发工作。 总之,《Jetson Xavier NX源码编译.pdf》是一份非常实用的Jetson Xavier NX平台软件开发指导文件,对于想要深入学习和开发Jetson Xavier NX平台的开发者来说,是一份非常值得阅读和参考的资料。 ### 回答3: 《Jetson Xavier NX源码编译.pdf》是一份关于如何在Jetson Xavier NX开发板上进行源代码编译的文档。Jetson Xavier NX是一款高性能、低功耗的AI计算平台,使用者可以在其上进行深度学习、计算机视觉和机器人等领域的开发。 本文档详细阐述了如何在Jetson Xavier NX上进行Linux内核和驱动的源代码编译。它包括了在Ubuntu环境下安装所需的软件包,如gcc、make、cmake、git等,并提供了一些例子代码和编译命令。同时,本文档还介绍了如何使用JetPack SDK进行系统的烧写和配置。 值得注意的是,由于本文档的针对性较强,对于没有相关经验的用户来说,有可能会出现编译失败、系统崩溃等情况。因此,在操作前需要对该平台有一定的了解,并且仔细阅读本文档的内容,尤其是注意一些风险提示和注意事项。 总之,《Jetson Xavier NX源码编译.pdf》对开发者在Jetson Xavier NX上进行源代码编译提供了详尽的指导,有助于用户深入掌握这一强大的AI计算平台,快速实现自己的开发和研究计划。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值