许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Jetson Xavier NX内核编译与源码编译完整流程

Jetson Xavier NX内核编译与源码编译完整流程

阅读数 4
点赞 0
article_banner

Jetson Xavier NX   简单介绍: NX通过外形小巧的模组系统将超级计算机的性能带到了边缘端。 高达21 TOPS的加速计算能力可并行运行现代神经网络并处理来自多个高分辨率传感器的数据,这是完整AI系统的要求。NVIDIA Jetson Xavier NX 16GB EMMC ,8GB DDR

1、下载代码L4T R32.5.1为例

1)、kernel
L4T R32.5.1 Release Page | NVIDIA Developer

L4T Driver Package (BSP) Sources

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


2)、root filesystem
L4T R32.5.1 Release Page | NVIDIA Developer

Sample Root Filesystem Sources

对应文件:“Tegra_Linux_Sample-Root-Filesystem_R32.5.1_aarch64.tbz2"

3)、cboot
L4T R32.5.1 Release Page | NVIDIA Developer

Cboot Sources T194

对应文件:“cboot_src_t19x.tbz2"

2、解压代码
𝑡𝑎𝑟−𝑥𝑣𝑗𝑓𝑇𝑒𝑔𝑟𝑎186𝐿𝑖𝑛𝑢𝑥𝑅32.5.1𝑎𝑎𝑟𝑐ℎ64.𝑡𝑏𝑧2  tar−xvjfTegra 186 L inu x R  32.5.1 a arch64.tbz2  cd Linux_for_Tegra/rootfs
𝑠𝑢𝑑𝑜𝑡𝑎𝑟−𝑗𝑥𝑝𝑓../../𝑇𝑒𝑔𝑟𝑎𝐿𝑖𝑛𝑢𝑥𝑆𝑎𝑚𝑝𝑙𝑒−𝑅𝑜𝑜𝑡−𝐹𝑖𝑙𝑒𝑠𝑦𝑠𝑡𝑒𝑚𝑅32.5.1𝑎𝑎𝑟𝑐ℎ64.𝑡𝑏𝑧2  sudotar−jxpf.. / .. / Tegr a L inu x S ample−Root−Filesyste m R  32.5.1 a arch64.tbz2  cd ..

   $ sudo ./apply_binaries.sh

Selecting previously unselected package   nvidia-l4t-core.

   ....

.....

   ~/workspace/waveshare/jetson5.1/xa_nx/source5/Linux_for_Tegra

   Removing QEMU binary from rootfs

   Removing stashed Debian packages from rootfs

   L4T BSP package installation completed!

   Rename ubuntu.desktop --> ux-ubuntu.desktop

   Disabling NetworkManager-wait-online.service

   Disable the ondemand service by changing the runlevels to 'K'

   Success!

3 、交叉编译环境配置

GCC 7.3.1 for 64 bit BSP and Kernel (gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz)


𝑐𝑑/𝑜𝑝𝑡  cd / opt  tar xf gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz


4、编译kernel

1)、解压内核

𝑡𝑎𝑟−𝑥𝑣𝑗𝑓𝑝𝑢𝑏𝑙𝑖𝑐𝑠𝑜𝑢𝑟𝑐𝑒𝑠.𝑡𝑏𝑧2  tar−xvjfpubli c s ources.tbz2  cd Linux_for_Tegra/source/public

   $ tar -xvjf kernel_src.tbz2

2)、编译内核

备注:在此之前已经安装编译依赖工具 sudo apt install build-essential bc

𝑐𝑑/𝐿𝑖𝑛𝑢𝑥𝑓𝑜𝑟𝑇𝑒𝑔𝑟𝑎/𝑠𝑜𝑢𝑟𝑐𝑒  cd / Linu x f o r T egra / source  mkdir out
𝑒𝑥𝑝𝑜𝑟𝑡𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇= /𝑤𝑜𝑟𝑘𝑠𝑝𝑎𝑐𝑒/𝐿𝑖𝑛𝑢𝑥𝑓𝑜𝑟𝑇𝑒𝑔𝑟𝑎/𝑠𝑜𝑢𝑟𝑐𝑒/𝑜𝑢𝑡/  exportTEGR A K ERNE L O UT=  / workspace / Linu x f o r T egra / source / out /   export CROSS_COMPILE=/opt/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
𝑒𝑥𝑝𝑜𝑟𝑡𝐿𝑂𝐶𝐴𝐿𝑉𝐸𝑅𝑆𝐼𝑂𝑁=−𝑡𝑒𝑔𝑟𝑎  exportLOCALVERSION=−tegra  mkdir -p 𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇进入𝑘𝑒𝑟𝑛𝑒𝑙源码下  TEGR A K ERNE L O UT 进  入 kernel 源  码  下   cd public/kernel/kernel-4.9

   $ make ARCH=arm64 O=𝑇𝐸𝐺𝑅𝐴𝐾𝐸𝑅𝑁𝐸𝐿𝑂𝑈𝑇𝑡𝑒𝑔𝑟𝑎𝑑𝑒𝑓𝑐𝑜𝑛𝑓𝑖𝑔  TEGR A K ERNE L O UTtegr a d efconfig  make ARCH=arm64 O=$TEGRA_KERNEL_OUT -j8(这个是CPU核数)

3)、生成Image和dtb,替换并安装

Linux_for_Tegra/source/out/arch/arm64/boot$ cp Image  ~/workspace/Linux_for_Tegra/kernel/Image

Linux_for_Tegra/source/out/arch/arm64/boot$ cp dts/*

$/workspace/Linux_for_Tegra/kernel/dtb/ -rf

安装内核模块 sudo make ARCH=arm64 O=$TEGRA_KERNEL_OUT modules_install INSTALL_MOD_PATH=<top>/Linux_for_Tegra/rootfs/

4)、(可选)在rootfs路径下

𝑐𝑑<𝑚𝑜𝑑𝑢𝑙𝑒𝑠𝑖𝑛𝑠𝑡𝑎𝑙𝑙𝑝𝑎𝑡ℎ>  cd<module s i nstal l p ath>  tar --owner root --group root -cjf kernel_supplements.tbz2 \

   lib/ modules  

   将 “kernel_supplements.tbz2”替换到Linux_for_Tegra/kernel$路径下 执行 apply_binaries.sh 脚本

5)、烧录

进入recovery模式,sudo ./flash.sh p3449-0000+p3668-0001-qspi-emmc mmcblk0p1


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空