Petalinux工程如何离线编译

目录

一.下载离线包

[1.1 共享状态缓存包:sstate-cache](#1.1 共享状态缓存包:sstate-cache)

[1.1.1 进入官网打开Petalinux工具网页](#1.1.1 进入官网打开Petalinux工具网页)

[1.1.2 找到相应的Petalinux版本](#1.1.2 找到相应的Petalinux版本)

[1.1.3 根据平台下载](#1.1.3 根据平台下载)

[1.2 下载downloads源码包](#1.2 下载downloads源码包)

[1.3 open_components源码包](#1.3 open_components源码包)

二.解压

[2.1 sstate-cache](#2.1 sstate-cache)

[2.2 downloads源码包](#2.2 downloads源码包)

[2.3 解压open_components](#2.3 解压open_components)

三.Petalinux离线工程配置

[3.1 u-boot和linux源码路径配置](#3.1 u-boot和linux源码路径配置)

[3.2 downloads离线包路径配置](#3.2 downloads离线包路径配置)

[3.3 sstate-cache路径配置](#3.3 sstate-cache路径配置)

[3.4 禁止联网编译](#3.4 禁止联网编译)

四.编译


我们常常出于各种原因,需要离线编译Petalinux工程。例如:办公电脑不允许联网,或者在线编译需要访问国外网站而又苦于不能翻墙,或者折腾了好一阵子终于可以顺利下载了,但又出现了各种编译错误,搜遍全网都没有找到解决方法......

此时,你需要离线编译来拯救你临近崩溃边缘的心!

一.下载离线包

离线编译需要三个基础包,都可以从xilinx的中国官网下载:

Xilinx中国官网

1.1 共享状态缓存包:sstate-cache

1.1.1 进入官网打开Petalinux工具网页

1.1.2 找到相应的Petalinux版本

1.1.3 根据平台下载

若是64位ARM平台,则下载aarch64版本;若是32位ARM平台,则下载arm版本。

1.2 下载downloads源码包

这是在线编译时会自动下载的源码包。我们要离线编译,所以,要提前下载。

下载地址与sstate-cache在同一栏目下。这个包比较大,需耐心等待。

1.3 open_components源码包

此源码包中包含了u-boot、linux、RootFS和arm-trusted-firmware等核心系统组件。

二.解压

准备好离线包后,可以解压到任意目录。

例如:

2.1 sstate-cache

解压到如下目录:

复制代码
/mnt/petalinux202101_offline/

解压后,是一个sstate_arm_2021.1文件夹(此处下载的是202101版本)。

则工程配置时,需要用到以下目录路径:

复制代码
/mnt/petalinux202101_offline/arm

2.2 downloads源码包

解压到如下目录:

复制代码
/mnt/petalinux202101_offline/

解压后,是一个downloads文件夹。

则工程配置时,需要用到以下目录路径:

复制代码
/mnt/petalinux202101_offline/downloads

2.3 解压open_components

解压到如下目录:

复制代码
mnt/petalinux202101_offline

解压后,将得到一个petalinux-v2021.1-open_components文件夹(此处下载的是202101版本)。

此文件夹下包含了以下组件:

则工程配置时,需要用到以下目录路径:

复制代码
/mnt/petalinux202101_offline/petalinux-v2021.1-open_components/components/u-boot-plnx
/mnt/petalinux202101_offline/petalinux-v2021.1-open_components/components/xlnx-5.10

三.Petalinux离线工程配置

执行如下命令,进入Petalinux工程配置界面:

复制代码
petalinux-config --get-hw-description=../xsa/

3.1 u-boot和linux源码路径配置

在Linux Components Selection选项中,u-boot和linux-kernel均选择"ext-local-src",然后在对应路径设置中填写u-boot和linux-kernel的本地路径:

复制代码
/mnt/petalinux202101_offline/petalinux-v2021.1-open_components/components/u-boot-plnx
/mnt/petalinux202101_offline/petalinux-v2021.1-open_components/components/xlnx-5.10

3.2 downloads离线包路径配置

进入以下选项中:

复制代码
 -> Yocto Settings
		-> Add pre-mirror url
			->  (press Enter)
					Clear default value

填入如下路径:

复制代码
file:///mnt/petalinux202101_offline/downloads

3.3 sstate-cache路径配置

进入如下选项:

复制代码
         -> Yocto Settings
             ->Local sstate feeds settings
                  ->local sstate feeds url
                          (press Enter)

填入如下路径:

复制代码
/mnt/petalinux202101_offline/sstate_arm_2021.1/arm

3.4 禁止联网编译

1.取消"Enable Network sstate feeds"选项。

2.选择"Enable BB NO NETWORK"选项。

四.编译

至此,离线编译配置已大功告成,放心去编译吧,开始实现你的项目........

相关推荐
辣个蓝人QEX1 个月前
【ZYNQ Linux开发】使用 boot.scr 启动 Linux 报错 Bad Linux ARM64 Image magic! 调试过程记录
linux·运维·fpga开发·zynq·petalinux·zynq mpsoc
hi945 个月前
Versal - Petalinux 2024.2(下载与安装+VD100+安装JupyterLab+SD卡分区+SDT流程)
linux·fpga开发·petalinux·versal soc
如何学会学习?6 个月前
10. zynq应用开发--camke编译
cmake·zynq·petalinux·mpsoc·acu106·zcu106
LEEE@FPGA1 年前
Petalinux由于网络原因产生的编译错误(3)-qemu-xilinx-system-native 失败
petalinux
ScilogyHunter1 年前
Petalinux 基础操作流程总结
petalinux
ScilogyHunter1 年前
部署运行petalinux系统镜像
petalinux·zynqmpsoc
乌恩大侠2 年前
【Petalinux】制作SD卡 操作系统 启动
arm·fpga·petalinux