Ubuntu20.04搭建PetaLinux2022.2 + 离线编译
- 在xilinx官网下载petalinux22.04安装包。
链接:[https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools.html] - 在ubuntu下安装必要运行库。
sudo apt-get install iproute2 gawk python3 python
sudo apt-get install build-essential gcc git make net-tools libncurses5-dev tftpd
sudo apt-get install zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget git-core diffstat
sudo apt-get install chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib
sudo apt-get install automake zlib1g:i386 screen pax gzip cpio python3-pip python3-pexpect xz-utils debianutils
sudo apt-get install iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3
- 拷贝第一步下载的petalinux-v2022.2-10141622-installer.run运行文件至ubuntu目录下,并运行如下命令。
./petalinux-v2022.2-10141622-installer.run --dir ../petalinux/
–dir用于指定安装petalinux的目录,不指定默认安装在当前路径,且会报警告。
执行结果如下图所示
在安装时连续输入三次q,y即可,此时若未安装tftp服务器则会报警告。
- 安装tftp服务器
sudo apt-get install tftpd-hpa
- 此时进入安装目录进行petalinux的工程创建配置则不会报错。若仍出现错误,请检查第二步运行库是否安装完整。
或使用sudo apt-get autoremove卸载默认安装库,而后重新执行第二步
- 安装完成后便可使用petalinux进行工程的配置、编译等,但默认是使用在线编译,速度非常慢且极易出错。因此xilinx官方提供了一种离线编译的方式可以大大提高编译效率。
首先需要去xilinx官网下载离线包
下载地址
downloads是必须要下载的,上面三个cache包根据所使用的处理器架构对应选择,我这里使用的是ZYNQ7Z020,需要下载ARM架构的支持包。
-
下载完成后拷贝到ubuntu目录下解压。
-
执行 petalinux-config进入配置界面并进行以下配置。
$ petalinux-config ---> Yocto Settings ---> Add pre-mirror url ---> file:///home/luo/xilinx/2022.2/downloads
$ petalinux-config ---> Yocto Settings ---> Local sstate feeds settings ---> local sstate feeds url ---> /home/luo/xilinx/2022.2/arm
- 设置下载和共享状态目录,请在 /project-spec/meta-user/conf/petalinuxbsp.conf文件中添加以下变量。
DL_DIR = "/home/luo/xilinx/2022.2/downloads"
MIRRORS_DIR = "/home/luo/xilinx/2022.2/arm"
注意: 上述步骤所涉及的目录均为我的安装目录,使用时需根据你的对应安装目录修改。
- 执行完上述步骤后便可进行离线编译,速度会大幅提升。但在编译时可能会报错,提示某些目录没有执行权限,此时使用管理员权限给对应的目录提供操作权限即可。