RK3568技术笔记九 编译Linux详细介绍

在编译前需要按照前面的方法始化编译环境,否则会导致编译失败(若配置过则无需重复配置)。

全自动编译包含所有镜像编译,包括:uboot编译、Kernel编译、Recovey编译、文件系统编译、编译完成镜像的更新与打包。

       按照前面的方法初始化编译环境后,还需要设置RK_ROOTFS_SYSTEM环境变量,通过设置此变量,可以决定打包哪个文件系统:

打包buildroot文件系统,则设置RK_ROOTFS_SYSTEM为buildroot,如下所示:

$ export RK_ROOTFS_SYSTEM=buildroot

打包Debian文件系统,则设置RK_ROOTFS_SYSTEM为debian,如下所示:

$ export RK_ROOTFS_SYSTEM=debian

打包Ubuntu文件系统,则设置RK_ROOTFS_SYSTEM为ubuntu,如下所示:

$ export RK_ROOTFS_SYSTEM=ubuntu

查看当前终端设置的RK_ROOTFS_SYSTEM环境变量的值,执行命令:

$ echo $RK_ROOTFS_SYSTEM

下面以编译buildroot文件系统为例,使用全自动编译方法进行编译:

配置RK_ROOTFS_SYSTEM环境变量为buildroot,执行命令:

$ export RK_ROOTFS_SYSTEM=buildroot

查看RK_ROOTFS_SYSTEM环境变量是否配置正确,执行命令:

$ echo $RK_ROOTFS_SYSTEM

如下图所示:

可以看到输出为buildroot,说明配置正确。

执行全自动编译脚本,命令如下:

$ ./build.sh

如下图所示:

编译完成,此时终端最下行显示(END),按下“q”键退出,如下图所示:

最终,编译完成,如下图所示:

       上图中提示“确认板级的电源域配置”,这里已经配置好,请不要改动,改动错误会导致CPU芯片烧坏。

       编译完成后,所有烧写所需要的镜像将都会链接到rockdev目录,可以到rockdev目录下查看,如下图所示:

如需拷贝镜像到Windows参考第4.7节《镜像拷贝》

如需烧写自己编译的镜像请参考第六章《固件烧写》

单独编译

       说明:单独编译涉及镜像较多,较为复杂,若不是十分必须建议使用全自动编译,简单、方便。

Uboot编译

在编译前需要按照前面的方法初始化编译环境,否则会导致编译失败(若配置过则无需重复配置)。

进入源码目录(目录需按个人实际路径修改),执行命令:

$ cd ~/dianyu/sail_rk356x_linux_release_v1.3.0_20220620/

如下图所示:

编译uboot,执行命令:

$ ./build.sh uboot

如下图所示:

编译完成如下图所示:

编译后在 u-boot 目录生成两个镜像文件,分别是:

rk356x_spl_loader_v1.13.112.bin(这个文件就是MiniLoaderAll.bin,只是名字不同)

uboot.img

如下图所示:

Kernel编译

在编译内核前需要按照前面的方法初始化编译环境,否则会导致编译失败(若配置过则无需重复配置)。

进入源码目录(目录需按个人实际路径修改),编译kernel,执行命令:

$ ./build.sh kernel

如下图所示:

编译完成如下图所示:

红底字为提示电源域配置,源码中已经配置好,务必不要改动,否则会导致芯片烧坏。

编译后在 kernel 目录生成内核镜像文件:boot.img,如下图所示:

Recovery编译

在编译前需要按照前面的方法初始化编译环境,否则会导致编译失败(若配置过则无需重复配置)。

进入源码目录(目录需按个人实际路径修改),编译Recovery,执行命令:

$ ./build.sh recovery

如下图所示:

       编译完成后在 buildroot/output/sail_rk3568_recovery/images 目录生成recovery.img镜像,如下图所示:

文件系统编译

在编译前需要按照前面介绍的方法初始化编译环境,否则会导致编译失败(若配置过则无需重复配置)。

注:在编译完成后进行固件打包的时候,会打包最后一次编译的文件系统,所以这里建议仅编译需要使用的文件系统,不需要的则不编译,否则在最后打包固件时可能会打包成不需要的文件系统。

Buildroot文件系统编译

进入源码目录(目录需按个人实际路径修改),编译Buildroot,执行命令:

$ ./build.sh buildroot

如下图所示:

编译后在 buildroot/output/sail_rk3568/images 目录生成rootfs.ext4镜像。如下图所示:

Debian文件系统编译

按下述方法编译的Debian系统,用户名是:linaro       密码:linaro

进入源码目录(目录需按个人实际路径修改),安装依赖包,执行如下所示命令:

注意,一定要在开发板源码目录下执行下述命令,否则会安装失败

$ sudo apt-get install binfmt-support qemu-user-static live-build

$ sudo dpkg -i debian/ubuntu-build-service/packages/*

$ sudo apt-get install -fy

安装过程如下图所示:

安装完成后,编译Debian,执行命令:

$ ./build.sh debian

如下图所示:

编译过程中会提示输入密码,直接输入即可(密码默认是隐式的)。

编译后在 debian 目录生成 linaro-rootfs.img 镜像。如下图所示:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Spring Boot+VUE旅游管理系统

1管理员功能模块 管理员通过点击后台管理,进入页面可以输入用户名、密码、角色进行登录相对应操作,如图1所示。 图1管理员登录界面 管理员通过点击后台管理,进入页面可以填写首页、个人中心、用户管理、旅游方案管理、旅游购买管理、系统管…

多协议接入/GB28181/GAT1400协议/安防综合管理系统EasyCVR报错version`GLIBCXX_3.4.19‘not found如何处理?

多协议接入/GB28181/GAT1400协议/安防综合管理系统EasyCVR视频汇聚平台能在复杂的网络环境中,将前端设备统一集中接入与汇聚管理。智慧安防/视频存储/视频监控/视频汇聚EasyCVR平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、…

RemObjects教程

File—Other…—RemObjects Data Abstract—ComboServer Step(1) 在出现的 NewRemObjects SDK Server 对话框中 Project Folder :文件存档路径 Project Name :工程名称 Also-Create a matching client application and a project group:在创…

【麒麟虚拟机】NetworkManager没有运行

麒麟V10 建linux麒麟虚拟机,发现,网络没有配置 提示,NetworkManager没有运行。编辑联接也不能配置 解决方法,在终端输入命令: sudo systemctl start NetworkManager 启动以后,编辑连接选自动以太网&…

事件、方法实现 on_radioGreen_clicked ,on_chkBoxUnder_clicked,Qfont,QPalette

Vertical Layout 、Horizontal Layout 实验窗体自适应布局 接上篇界面布局, 实验checkBox、radioBox 的事件槽, 使用Qfont组件变更纯文本框QPlainTextEdit中字体的下划线、加粗、斜体效果 使用调色板组QPalette变更纯文本框QPlainTextEdit中文本颜色 UI…

Sectigo OV通配符SSL证书多少钱?

在网络安全领域,SSL数字证书起着至关重要的作用,尤其是在保护网站和用户信息方面。而Sectigo OV通配符证书是一种常用的数字证书之一,它能够为同一域名下的多个子域名提供保护,还能够通过企业验证来增强安全性。那么,对…

Table 宽度超出页面宽度时,出现滚动条,单元格内容不换行实

修改前 方法 <div styleoverflow:auto><table stylewhite-space: nowrap></table> </div>修改后

【Gradio】Building With Blocks 块中的状 态 + 动态应用程序与渲染装饰器

State in Blocks 块中的状态 我们介绍了接口中的状态&#xff0c;这个指南将看看块中的状态&#xff0c;其工作原理大致相同。 全局状态 块中的全局状态与接口中的工作原理相同。在函数调用外创建的任何变量都是所有用户共享的引用。 会话状态 Gradio 支持会话状态&#xff…

IT入门知识第一部分《IT基础知识》(1/10)

目录 IT入门知识第一部分《IT基础知识》&#xff08;1/10&#xff09; 1.引言 2.第一部分&#xff1a;IT基础知识 2.1 计算机硬件 CPU&#xff1a;计算机的心脏 内存&#xff1a;数据的临时居所 存储设备&#xff1a;数据的长期仓库 输入输出设备&#xff1a;与计算机的…

LeetCode 48.旋转图像

1.做题要求: 2.从此题我们可以看出规律为第几行要变为倒数第几列&#xff0c;所以我们最好先把二维数组存入一维数组中&#xff0c;然后先从最后一列遍历&#xff0c;把一维数组里的元素&#xff0c;依次等于遍历的元素即可: void rotate(int** matrix, int matrixSize, int*…

【Seata】分布式事务解决方案——理论

目录 回顾什么是事务数据库事务的四大特性&#xff1a;ACID 分布式事务解释面临挑战分布式事务产生场景1. 单体架构中多数据源场景2. 分布式架构场景 分布式事务解决方案jta AtomikosLCN模式问题 Alibaba的Seata解决分布式事务问题 使用MQ解决分布式事务问题问题1&#xff1a;…

连接智能世界,Vatee万腾平台在行动

随着科技的飞速发展&#xff0c;我们生活在一个日益智能化的世界里。从智能家居到智慧城市&#xff0c;从无人驾驶到远程医疗&#xff0c;智能科技正以前所未有的速度改变着我们的生活。而在这场智能革命中&#xff0c;Vatee万腾平台凭借其前瞻性的视野和创新的实力&#xff0c…

企业级WordPress开发 – 创建企业级网站的优秀技巧

目录 1 “企业级”一词是什么意思&#xff1f; 2 使用 WordPress 进行企业级 Web 开发有哪些好处&#xff1f; 3 使用 WordPress 进行企业级开发的主要好处 3.1 WordPress 可扩展、灵活且价格实惠 3.2 WordPress 提供响应式 Web 开发 3.3 WordPress 提供巨大的可扩展…

全球进口家装水管十大品牌

随着科技进步发展&#xff0c;健康环保家居观念深入人心&#xff0c;家装管道用水安全对人们健康起来至关重要的作用&#xff0c;水管管道业主非常重视&#xff0c;但面临市场参差不齐的进口水管不知如何选择&#xff0c;下面就和大家推荐一下进口家装水管十大品牌 1.德国洁水…

未授权访问漏洞总结

以下总结了常见的未授权访问漏洞&#xff0c;还在持续更新中&#xff0c;遇到就会补充。欢迎大家关注~ 目录 FTP未授权访问&#xff08;21&#xff09; 漏洞原理 漏洞检测 漏洞利用 漏洞修复 LDAP未授权访问&#xff08;389&#xff09; 漏洞原理 漏洞检测 漏洞利用 …

MacOS - 启动台多了个『卸载 Adobe Photoshop』

问题描述 今天安装好了 Adobe Ps&#xff0c;但是发现启动台多了个『卸载 Adobe Photoshop』强迫症又犯了&#xff0c;想把它干掉&#xff01; 解决方案 打开访达 - 前往 - 资源库&#xff0c;搜索要卸载的名字就可以看到&#xff0c;然后移除到垃圾筐

Javaweb07-JavaBean技术和Jsp开发模式

JavaBean技术和Jsp开发模式 一.JavaBean技术 1.JavaBean的基本概念 **JavaBean组件&#xff1a;**与html分离且使用Java代码封装类 **JavaBean分类&#xff1a;**可视化JavaBean&#xff1a;swing 非可视化JavaBean&#xff1a;用于封装实体和业务逻辑 JavaBean特点&#x…

if/case条件测试语句

一 条件测试 1.1返回码 $? $? 返回码 用来哦按段命令或者脚本是否执行成功 0 true为真就是成功成立 非0 false 失败或者异常 1.2 test 命令 可以进行条件测试 然后根据返回值来判断条件是否成立 -e &#xff1a;exist 测试目录或者目录是否存在 -d : director…

华为北向网管NCE开发教程8(性能数据)

1接口说明 通过北向网管获取性能数据的接口&#xff0c;主要用PerformanceManagementMgr_I。 获取当前&#xff1a;getAllCurrentPMData 获取历史&#xff1a;getHistoryPMData Common_IHolder commonHolder new Common_IHolder(); emsSession.getManager("Performance…

itsm服务管理工具有哪些?

itsm&#xff08;IT服务管理&#xff09;是现代企业管理IT服务的关键框架&#xff0c;可帮助组织提供高效的IT服务&#xff0c;并确保业务持续运行。使用itsm服务管理工具是实现这一目标的关键&#xff0c;下面我们来看看itsm服务管理工具有哪些&#xff1a; 1. ServiceDesk Pl…