moerjielovecookie

Sawen_Blog

一个普通工科牲的博客网站
x
github
follow
email

Petalinux

Petalinux 命令#

image
参考《UG 1157 PetaLinux Command Line Reference Guide》

//创建petalinux工程
petalinux-create -t project --template zynq -n <name> 

//配置工程
cd 上一步的工程
petalinux-config --get-hw-description ../xsa_folder/

//配置Linux内核
petalinux-config -c kernel

//配置Linux根文件系统
petalinux-config -c rootfs

//编译
petalinux-build

//制作BOOT.Bin
petalinux-package --boot --fsbl --fpga --u-boot --force

//挂载NFS
mount -t nfs -o nolock 192.168.0.1:/home/moerjie/work /mnt

Petalinux 设置本地编译#

Xilinx 下载中心
首先在下载中心下载 petalinux 对应版本的 "arm sstate-cache" 和 "download" 包。
image
image
将下载好的文件解压到 /opt/pkg/tools/ 文件路径下,使用 petalinux-config 配置工程。配置过程可见《领航者 ZYNQ 之嵌入式 Linux 开发指南 V 3.2》6.4 节。

与正点原子教程不同的地方#

正点原子的修改 project-spec/meta-user/conf/petalinuxbsp. Conf 的代码如下:

PREMIRRORS_prepend = " \
git://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
gitsm://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
ftp://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
http://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n \
https://.*/.* file:///mnt/hgfs/share18/downloads/downloads \n"

但是 2023.2 版本的 petalinux 不支持这个语法,需改为:

PERMIRRORS:prepend = "\
git://.*/.* file:///opt/downloads/downloads \n \
gitsm://.*/.* file:///opt/downloads/downloads \n \
ftp://.*/.* file:///opt/downloads/downloads \n \
http://.*/.* file:///opt/downloads/downloads \n \
https://.*/.* file:///opt/downloads/downloads \n"
pre-mirror: file:///opt/downloads/downloads
sstate: /opt/sstate/arm/
Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.