新建工程
1、从.xas创建工程(使用 Vivado Design Suite 设置硬件参数,产生的文件)
$ petalinux-create --type project --template <PLATFORM> --name <PROJECT_NAME>
参数:
–template - 支持下列平台类型:
○ zynqMP (UltraScale+™ MPSoC)
○ zynq (Zynq-7000 器件)
○ microblaze (MicroBlaze™ CPU)
2、硬件描述<PATH-TO-HDF/DSA-DIRECTORY> 为使用vivado生成的文件
$ petalinux-config --get-hw-description=<PATH-TO-HDF/DSA-DIRECTORY>
会出现图形界面,根据自己的要求配置参数
1)kernel和uboot的源码采用petalinux内部还是外部的?此处选择外部的
![在这里插入图片描述](https://img-blog.csdnimg.cn/9ae4ebafa743409ca1466666e5d79988.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5Li65LqG57u05oqk5LiW55WM5ZKM5bmzXw==,size_12,color_FFFFFF,t_70,g_se,x_16)
如果选择ext-local-src,则在此上一个图形界面上添加路径文件
输入源码路径
同理内核设置也一样:
查看使用的配置文件,这里使用默认的配置
u-boot Configuration —>
添加配置文件,默认为│xilinx_zynqmp_virt_defconfig
选择启动介质
配置uboot
petalinux-config -c u-boot
首次配置非常慢,因为要从网上下载很多东西,有时候可能会出现错误,在出现错误时,再次执行。
配置kernel
petalinux-config -c kernel
配置rootfs
petalinux-config -c rootfs
编译,这个过程非常慢,因为要下载文件,有时候会下载失败导致编译出错。
petalinux-build
编译的程序在本工程的 image/linux文件下
wy@ubuntu:/opt/pkg/petalinux/2020.2/ZYNQ/images/linux$ ls
bl31.bin image.ub rootfs.cpio.gz.u-boot system.dtb zynqmp-qemu-arm.dtb
bl31.elf pmufw.elf rootfs.jffs2 u-boot.bin zynqmp-qemu-multiarch-arm.dtb
BOOT.BIN pxelinux.cfg rootfs.manifest u-boot.elf zynqmp-qemu-multiarch-pmu.dtb
boot.scr rootfs.cpio rootfs.tar.gz vmlinux
Image rootfs.cpio.gz system.bit zynqmp_fsbl.elf
板子上所使用的文件
BOOT.BIN,image.ub
编译所有程序,也可以单独编译
petalinux-build -c kernel
Petalinux-build -c u-boot
Petalinux 常用命令
清理:
#petalinux-build -x distclean
彻底清理,build文件夹都将被清理掉
#petalinux-build -x mrproper /*清理彻底*/
使用BSP创建工程
bsp包已经配置好了数据,直接按照以下步骤即可编译
# mkdir -p <WORKDIR>
# cp -a <DVDROM>/04-Linux_Source/Petalinux/myd_zu3eg_2020.bsp <WORKDIR>
# cd <WORKDIR>
# petalinux-create -t project -s myd_zu3eg_2020.bsp
# cd myd_zu3eg4ev_2020
# petalinux-build