英伟达 Jetson Xavier/Xavier NX/Orin系统移植编译

英伟达 Jetson Xavier/Xavier NX/Orin系统移植编译

1、下载Jetson BSP包和交叉编译环境
地址:https://developer.nvidia.com/embedded/jetson-linux-archive

在这里插入图片描述

下载需要版本即可,此次编译采用32.4.2版本
需要下载的文件如下:
在这里插入图片描述

2、新建一个文件夹
mkdir xavier_nx_prj

将上诉文件拷贝到此文件夹下
在这里插入图片描述

3、解压public_sources.tbz2
tar -xjf public_sources.tbz2

在这里插入图片描述

4、进入Linux_for_Tegra/source/public,解压kernel_src.tbz2
cd /Linux_for_Tegra/source/public
tar -xjf kernel_src.tbz2

在这里插入图片描述

5、解压“Tegra186_Linux_R32.4.2_aarch64.tbz2”
sudo tar -xf Tegra186_Linux_R32.4.2_aarch64.tbz2

在这里插入图片描述

6、将“Tegra_Linux_Sample-Root-Filesystem_R32.6.1_aarch64.tbz2”解压在/Linux_for_Tegra/rootfs目录内
cd Linux_for_Tegra/rootfs/
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R32.4.2_aarch64.tbz2
7、构建NVIDIA kernel 安装utilities
sudo apt install build-essential bc
8、在/Linux_for_Tegra/source/public/kernel路径下新建output文件夹。

在这里插入图片描述

9、设置环境变量
cd kernel-4.9/
export TEGRA_KERNEL_OUT=/home/kevin/nvidia/xs_xavier_nx_prj/Linux_for_Tegra/source/public/kernel/output

在这里插入图片描述

10、设置交叉编译链接
export CROSS_COMPILE=/home/kevin/nvidia/xavier_linux_package/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
export LOCALVERSION=-tegra

在这里插入图片描述

11、命令创建.config文件
cd kernel-4.9/
mkdir -p $TEGRA_KERNEL_OUT
make ARCH=arm64 O=$TEGRA_KERNEL_OUT tegra_defconfig

在这里插入图片描述

12、执行脚本,向Linux kernel打入实时补丁
scripts/rt-patch.sh apply-patches

在这里插入图片描述

13、构建dtb和模块的内核,进行编译
make mrproper      //注:首先清除所有的.o文件和依赖关系
make ARCH=arm64 O=$TEGRA_KERNEL_OUT -j8  //编译

在这里插入图片描述

编译完成如下:
在这里插入图片描述

14、编译生成dtbs
make ARCH=arm64 O=$TEGRA_KERNEL_OUT dtbs

在这里插入图片描述

15、编译生成modules

在这里插入图片描述
在这里插入图片描述

16、进入 Linux_for_Tegra执行apply_binaries.sh
cd linux_for_Tegra
sudo ./apply_binaries.sh

在这里插入图片描述
在这里插入图片描述

17、将Xavier /Xavier NX/Orin配置recovery模式,重新上电后,使用如下指令烧录

进入 Linux_for_Tegra

cd linux_for_Tegra
sudo ./flash.sh jetson-xavier mEC[mcblk0p1]

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/228087.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode(66)二叉树的最大深度【二叉树】【简单】

目录 1.题目2.答案3.提交结果截图 链接: 二叉树的最大深度 1.题目 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7]…

Python类调用实例方法

在 Python 的类体中定义的方法默认都是实例方法,通过对象来调用实例方法。 但要提醒大家的是,Python 的类在很大程度上是一个命名空间,当程序在类体中定义变量、方法时,与前面介绍的定义变量、定义函数其实并没有太大的不同。对比…

解析神器Xpath详解+实战

解析神器Xpath详解实战 有同学说,我正则用的不好,处理HTML文档很累,有没有其他的方法? 有!那就是XPath,我们可以先将 HTML文件 转换成 XML文档,然后用 XPath 查找 HTML 节点或元素。 目标&am…

【KMP】【判断是否是重复子字符串】Leetcode 459 重复的子字符串

【KMP】【判断是否是重复子字符串】Leetcode 459 重复的子字符串 解法1 拼接字符串-掐头去尾后判断是否含有原字符串解法2 KMP——重复子串的最小单位是这个字符串里的最长相等前后缀所不包含的子串解法3 暴力解法KMP ---------------🎈🎈题目链接&…

【C++11特性篇】一文助小白轻松理解 C++中的【左值&左值引用】【右值&右值引用】

前言 大家好吖,欢迎来到 YY 滴C系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! 目录 一.【左值&左值引用】&…

C#中简单的继承和多态

今天我们来聊一聊继承,说实话今天也是我第一次接触。 继承的概念是什么呢?就是一个类可以继承另一个类的属性和方法(成员) 继承是面向对象编程中的一个非常重要的特性。 好了,废话不多说,下面切入正题&a…

微信小程序使用camera扫码获取相机权限

确保用户隐私指引已经明确使用相机功能 “mp-weixin”: "permission": {"scope.camera": {"desc": "需要使用相机功能,请授权"}}wx.authorize({scope: scope.camera,success(res) {console.log(res, 用户成功授权)// 用户…

C语言实现Hoare版快速排序(递归版)

Hoare版 快速排序是由Hoare发明的,所以我们先来讲创始人的想法。我们直接切入主题,Hoare版快速排序的思想是将一个值设定为key,这个值不一定是第一个,如果你选其它的值作为你的key,那么你的思路也就要转换一下&#xf…

巧妙的使用WPF中的资源

其实,在wpf中,最核心的就是xaml,因为只有xaml,才能体现出用的是wpf,而不是普通的cs文件,cs文件在winform中等等程序都可以使用的,唯独xaml才是wpf中最重要的,最精华的东西&#xff0…

gitlab ci pages

参考文章 gitlab pages是什么 一个可以利用gitlab的域名和项目部署自己静态网站的机制 开启 到gitlab的如下页面 通过gitlab.ci部署项目的静态网站 # build ruby 1/3: # stage: build # script: # - echo "ruby1"# build ruby 2/3: # stage: build …

jupyter notebook介绍、安装和使用

简介 Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官方介绍 简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运…

Spring Boot+Mybatis设置sql日志打印

在全局配置文件添加以下内容:logging.level.com.demo.mapperdebug,com.demo.mapper:src下的mapper路径,debug:设置日志打印级别为debug,亦可设置为:ERROR、WARN、INFO application.properties …

10-流媒体-RTMP编译

将h264推流给服务器,就完成了采集端的推流工作。一般在嵌入式系统常用的rtmp推流方案是rtmpdump。使用rtmp库涉及到一些编译过程,下面我们一点点描述。 关于rtmp的使用涉及到3个开源库的编译(openssl, zlib, rtmpdump)&#xff0c…

【C++】optional的使用(一)

这篇文章介绍下C17引入的std::optional 为什么要有 optional 一般来说,如果想要一个函数返回“多个”值,C程序员倾向于使用结构体/类完成这个操作。即定义一个通用的结构体,在函数内部完成装填,然后返回一个实例化的结构体。 #…

fckeditor编辑器改造示例:增加PRE,CODE控件

查看专栏目录 Network 灰鸽宝典专栏主要关注服务器的配置,前后端开发环境的配置,编辑器的配置,网络服务的配置,网络命令的应用与配置,windows常见问题的解决等。 文章目录 修改方法:1)修改fckco…

Python项目——贪吃蛇

1、原理 整个界面由一个二维数组组成。游戏开始时,会随机生成一个苹果(红点)和一条蛇(黄点)。蛇会在二维数组中移动,当蛇碰到苹果时,苹果被吃,蛇的长度加一(红点变黄点&…

性能测试

什么是性能测试?性能测试定义性能测试和功能测试区别性能测试常见术语及指标1:用户数3:响应时间4:事务5:每秒事务通过数6:用户点击率7:吞吐量8:吞吐率9:思考时间10&#…

基于ssm的简单学校课程管理系统的设计与实现(源码+调试)

项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。今天给大家介绍一篇基于ssm的简单学校课程管…

探索Nginx的奥秘--从代理到负载均衡的艺术实践

文章目录 🌺Nginx的引入🌺🌺深刻理解正向代理与反向代理🌺🌹Reverse proxy🌹🌹正向代理与反向代理的区别🌹🌹反向代理为什么叫反向代理🌹🌹负载均…

C#教程(三):字符串的各种用法

在C#中,字符串(string 类型)是一种常用的数据类型,用于存储和操作文本数据。以下是一些C#中字符串的常见用法 1、输出任意的字符串长度 代码 #region 输出任意的字符串长度 Console.WriteLine("请输入你心中想到的名字&…