OrangePi Zero2开发指南:从SDK获取到交叉编译全流程详解

一、OrangePi Zero2 SDK说明

SDK 全称 Software Development Kit,即软件开发工具包。一般包括了一些工具(如交叉编译工具链)、库、文档和示例代码。香橙派的Linux SDK其实指的就是 orangepi-build 这套代码集,orangepibuild 在脚本和配置文件中会指定 u-boot、Linux内核和交叉编译工具链的地址,运行 orangepi-build时,当其发现本地没有这些东西,会自动去相应的地方下载的。使用 orangepi-build 可以编译出多个版本的 Linux 镜像。

1.1 使用环境要求

新版本的orangepi-build对编译主机(也就是搭建的vmware 虚拟机)的要求:新版本的orangepi-build是在Ubuntu22.04的x64电脑或者虚拟机上运行的。

  1. 确认自己的虚拟机或者Ubuntu实体机是不是22.04的方法如下:
test@test:~$ lsb_release -a
No LSB modules are available. Distributor ID: Ubuntu
Description: Ubuntu 22.04 LTS
Release: 22.04
Codename: jammy
  1. 如果不是,可从ubuntu官网重新下载ubuntu 22.04 x64镜像,重新更新下虚拟机,ubuntu 22.04 X64镜像下载地址:
http://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso
  1. 编译出来的完整SDK大概有16 G大小,因此建议在创建虚拟机时,至少分配50G的存储给虚拟机使用。

1.2 获取Linux SDK

  1. 方法一:从 github 下载 orangepi-build(要求网络要好,因此当前不是特别推荐)

搭建完虚拟机后, 从github下载香橙派Linux SDK:

test@test:~$ sudo apt update
test@test:~$ sudo apt install git
test@test:~$ git clone https://github.com/orangepi-xunlong/orangepi-build.git -b next

当然,如果git clone失败, 也可以直接访问该网址, 把orangepi-build的压缩包下载下来后,再放到编 译主机里。

image.png

然后解压下载下来的压缩包:

unzip orangepi-build-next.zip

orangepi-build 下载完后会包含下面的文件和文件夹

a.  build.sh: 编译启动脚本, 我们可以通过build.sh编译uboot、内核、根文件系统甚至完整的img
b.  external: 包含编译镜像需要用的配置文件、特定的脚本以及部分程序的源码等
c.  LICENSE: GPL 2 许可证文件
d.  README.md: orangepi-build 说明文件
e.  scripts: 编译 linux 镜像的通用脚本

解压完后,需要去修改orangepizero2的配置脚本

vi ./external/config/sources/families/sun50iw9.conf

修改nex)分支里的内核配置版本(默认是6.1.y这里改成5.16.y版本),不然6.1.y默认编译出来的内核默认没有无线网卡、I2C也不支持。

## For Linux5.16.y
KERNELBRANCH="branch:orange-pi-5.16-sunxi64"
LINUXCONFIG="linux-5.16-sun50iw9-current"
## For Linu6.1.y
#KERNELBRANCH="branch:orange-pi-6.1-sun50iw9"
#LINUXCONFIG="linux-6.1-sun50iw9-next"

方法二:从百度网盘下载(推荐使用该方法, 就不用考虑github下载过程中出现下载失败导致最后编译出来的系统可能是异常的)

从下面的百度网盘链接下载提前编译好的oragepi-build SDK包:

链接:https://pan.baidu.com/s/1y3db5GZFPZSnyYOCrKQcmQ 
提取码:92gt

下载下来后是几个拆分好的压缩包, 如下所示:

test@test:~/orangepi-build$ ls
orangepi-build-ok.tar.gz_00  orangepi-build-ok.tar.gz_01  orangepi-build-ok.tar.gz_02

这个时候可以用如下的命令进行合并解压:

cat  orangepi-build-ok.tar.gz_0* > orangepi-build-ok.tar.gz
tar -xvf  orangepi-build-ok.tar.gz

1.3 首次编译完整SDK

下载完源码后, 即可用build.sh进行首次编译.(注:如果是从6.1.2节 方法二:从百度网盘下载后, 由于已经缓存了交叉编译工具链、uboot和内核源码, 可以不运行build.sh脚本 )

点击OrangePi Zero2开发指南:从SDK获取到交叉编译全流程详解查看全文

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

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

相关文章

MATLAB NLP 工具箱 文本预处理教程

文章目录 前言一、文本预处理核心步骤二、MATLAB 实现示例三、高级预处理技术四、预处理流程整合五、性能优化与注意事项六、实战案例:IMDB 影评预处理 前言 以下是 MATLAB 自然语言处理 (NLP) 工具箱的文本预处理教程,涵盖核心步骤、代码实现及最佳实践…

大模型的量化与双重量化(1)

文章目录 大模型量化的含义和作用什么是量化量化的作用具体示例 双重量化的含义和作用什么是双重量化双重量化的具体实现双重量化的作用具体示例对比实际应用场景 大模型量化的含义和作用 什么是量化 量化是指将神经网络中的参数(权重和激活值)从高精度…

ES6 新增 API 方法

ES6 新增 API 方法 目录 ES6 新增 API 方法背景介绍数组方法1. Array.from()2. Array.of()3. find/findIndex4. includes5. flat/flatMap 对象方法1. Object.assign()2. Object.keys/values/entries3. Object.getOwnPropertyDescriptors() 字符串方法1. includes/startsWith/en…

vscode使用ssh链接服务器

vscode SSH vscode先下载remote ssh的插件,随后在左边的菜单栏里选择远程。 点击新建连接,输入用户名和地址,-p参数指定端口 ssh ubuntu{ip} -p xxx 随后就可以正常连接了,这里使用普通用户的用户名密码,别用root。 配…

基于FPGA的电子万年历系统开发,包含各模块testbench

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于FPGA的电子万年历系统开发,包含各模块testbench。主要包含以下核心模块: 时钟控制模块:提供系统基准时钟和计时功能。 日历计算模块&#xff1a…

C++ 的 out_ptr 和 inout_ptr

1 问题的起因 1.1 T** 或 T&* ​ C 的智能指针可以通过 get() 和 * 的重载得到原始指针 T*&#xff0c;遇到这样的 C 风格的函数的时候&#xff1a; void Process(Foo *ptr);std::unique_ptr<Foo> sp ...;Process(sp.get()); //调用 Process 函数Process() 函数以…

取消 Conda 默认进入 Base 环境

在安装 Conda 后&#xff0c;每次打开终端时默认会进入 base 环境。可以通过以下方法取消这一默认设置。 方法一&#xff1a;使用命令行修改配置 在终端中输入以下命令&#xff0c;将 auto_activate_base 参数设置为 false&#xff1a; conda config --set auto_activate_ba…

数字计数--数位dp

1.不考虑前导零 2.每一位计数&#xff0c;就是有点“数页码”的意思 P2602 [ZJOI2010] 数字计数 - 洛谷 相关题目&#xff1a;记得加上前导零 数页码--数位dp-CSDN博客 https://blog.csdn.net/2301_80422662/article/details/148160086?spm1011.2124.3001.6209 #include…

Redis学习打卡-Day5-Redis 持久化

单点 Redis 的一些问题 数据丢失&#xff1a;Redis 是内存存储&#xff0c;服务重启可能会丢失数据。solution&#xff1a;实现 Redis 数据持久化。并发能力&#xff1a;单节点 Redis 并发能力虽然不错&#xff0c;但也无法满足如618这样的高并发场景。solution&#xff1a;搭…

飞书知识问答深度体验:企业AI应用落地的典范产品

飞书知识问答深度体验&#xff1a;企业AI应用落地的典范产品 产品介绍-飞书知识问答是什么与常规通用大模型相比有何优点&#xff1f;大模型横行的时代&#xff0c;飞书知识问答对普通人和企业有何影响呢&#xff1f; 场景示例-不同角色可以用飞书知识问答做什么&#xff1f;对…

Python打卡训练营学习记录Day34

知识点回归&#xff1a; CPU性能的查看&#xff1a;看架构代际、核心数、线程数 GPU性能的查看&#xff1a;看显存、看级别、看架构代际 GPU训练的方法&#xff1a;数据和模型移动到GPU device上 类的call方法&#xff1a;为什么定义前向传播时可以直接写作self.fc1(x) CPU性…

Django的请求和响应+template模板

&#x1f31f; 如果这篇文章触动了你的心弦&#xff0c;请不要吝啬你的支持&#xff01; 亲爱的读者&#xff0c; 感谢你花时间阅读这篇分享。希望这里的每一个字都能为你带来启发或是让你会心一笑。如果你觉得这篇文章有价值&#xff0c;或者它解决了你一直以来的一个疑问&a…

Python |GIF 解析与构建(2):状态机解析

Python &#xff5c;GIF 解析与构建&#xff08;2&#xff09;&#xff1a;状态机解析 目录 Python &#xff5c;GIF 解析与构建&#xff08;2&#xff09;&#xff1a;状态机解析 引言 一、状态机概述 状态机的优势与改进方向 总结 引言 在《Python &#xff5c;GIF 解…

PCB设计实践(二十六)贴片电容与插件电容的全面解析:差异、演进与应用场景

一、核心差异&#xff1a;结构与性能对比 物理结构与封装形式 贴片电容&#xff08;Surface Mount Device, SMD&#xff09;采用扁平化设计&#xff0c;外形多为长方体或圆柱体&#xff0c;直接通过焊盘固定在电路板表面。其封装材料通常为陶瓷、聚合物或铝电解层&#xff0c;外…

XC7A200T-2FFG1156I FPGA AMD Xilinx Artix-7

XC7A200T-2FFG1156I 是 AMD Xilinx Artix-7 系列的一款高性能低功耗 FPGA&#xff0c;采用 28 nm 高性能低功耗&#xff08;HPL&#xff09;工艺制造&#xff0c;核心电压在 0.95 V–1.05 V 之间&#xff0c;可在 –40 C 至 100 C 工业温度范围内稳定工作 。 逻辑资源&#xff…

LVS + Keepalived + Nginx 高可用负载均衡系统实验

1. 项目背景 在现代 Web 应用中&#xff0c;高可用性和负载均衡是至关重要的需求。本项目旨在通过 LVS&#xff08;Linux Virtual Server&#xff09;实现流量分发&#xff0c;通过 Keepalived 实现高可用性&#xff0c;通过 Nginx 提供后端服务。该架构能够确保在单点故障的情…

window 显示驱动开发-视频内存供应和回收(一)

Windows 显示驱动程序模型 (WDDM) 1.2 及更高版本用户模式显示驱动程序必须使用内存套餐和回收功能&#xff08;从Windows 8开始提供&#xff09;&#xff0c;以减少本地内存和系统内存中临时表面所需的内存开销。 最低 WDDM 版本&#xff1a;1.2 最低 Windows 版本&#xff…

什么是VR场景?VR与3D漫游到底有什么区别

在数字化时代&#xff0c;虚拟现实&#xff08;Virtual Reality, 简称VR&#xff09;场景与3D漫游作为两种前沿技术&#xff0c;改变着人们的生活方式和体验模式。通过计算机模拟真实或假想的场景&#xff0c;让用户仿佛身临其境&#xff0c;并能与虚拟环境进行互动。尽管VR场景…

JAVA查漏补缺(2)

AJAX 什么是Ajax Ajax&#xff08;Asynchronous Javascript And XML&#xff09;&#xff0c;即是异步的JavaScript和XML&#xff0c;Ajax其实就是浏览器与服务器之间的一种异步通信方式 异步的JavaScript 它可以异步地向服务器发送请求&#xff0c;在等待响应的过程中&…

客服中心大模型应用演进路线:从传统服务到超级智能助手的转型

客服中心作为企业与客户沟通的重要桥梁&#xff0c;近年来经历了从人工服务到人工智能驱动的深刻变革。本文基于"客服中心大模型应用演进路线图"&#xff0c;详细解析客服中心从传统模式向AI驱动智能服务的转型历程&#xff0c;剖析每个发展阶段的特点、应用场景及关…