一、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电脑或者虚拟机上运行的。
- 确认自己的虚拟机或者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
- 如果不是,可从ubuntu官网重新下载ubuntu 22.04 x64镜像,重新更新下虚拟机,ubuntu 22.04 X64镜像下载地址:
http://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso
- 编译出来的完整SDK大概有16 G大小,因此建议在创建虚拟机时,至少分配50G的存储给虚拟机使用。
1.2 获取Linux SDK
- 方法一:从 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的压缩包下载下来后,再放到编 译主机里。
然后解压下载下来的压缩包:
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获取到交叉编译全流程详解查看全文