petalinux安装
Petalinux 工具是 Xilinx 公司推出的嵌入式 Linux 开发套件,包括了 u-boot、Linux Kernel、device-tree、rootfs 等源码和库,以及 Yocto recipes,可以让客户很方便的生成、配置、编译及自定义 Linux 系统。Petalinux 支持 Versal 、Zynq UltraScale+ MPSoC、Zynq-7000 SoC 以及 MicroBlaze,可与 Xilinx 硬件设计工具 Vivado 协同工作,大大简化了 Linux 系统的开发工作。
下载 Petalinux 安装包
可从“赛灵思官网”下载 Petalinux 安装包和对应的sstate-cache包。
网页拉到最下面可以看到对应的sstate-cache包,其中 Downloads (TAR/GZIP - 52.57 GB)包括了所有平台(即 aarch64、arm、microblaze),在使用时工具需求下载。
安装环境要求
- RAM>8G
- CPU频率>2G,核心>8核
- HDD>100g
- 支持的操作系统
- Red Hat Enterprise Workstation/Server 7.4, 7.5, 7.6, 7.7, 7.9, 8.2 (64-bit), 8.3, 8.4, 8.5,8.6
- CentOS Workstation/Server 7.4, 7.5, 7.6, 7.7, 7.9
- Ubuntu Linux Workstation/Server 18.04.1, 18.04.2, 18.04.3, 18.04.4, 18.04.5, 18.04.06,20.04, 20.04.1, 20.04.2, 20.04.3 ,20.04.4 (64-bit)
- SUSE Linux 15.2
- 主机系统/bin/sh是“bash”, Ubuntu可以 sudo dpkg-reconfigure dash 命令将/bin/sh改为“bash”
安装所依赖的软件
在安装 Petalinux 之前我们需要为 Ubuntu 系统安装一些必要的运行软件以及依赖库
#更新软件包
sudo apt-get update
#根据提示输入小写的"y"
sudo apt-get install iproute2 gawk python3 python build-essential gcc git make net-tools libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget git-core diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib automake zlib1g:i386 screen pax gzip cpio python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3
修改 bash
Petalinux 工具需要主机系统的/bin/sh 是 bash,而 Ubuntu 默认的/bin/sh 是 dash,所以这里需要进行更改。运行如下命令进行修改
sudo dpkg-reconfigure dash
执行结果如下图所示:
选择“NO”按下回车即可。
安装 petalinux
- 创建安装目录
sudo chown -R $USER:$USER /opt
mkdir -p /opt/pkg/petalinux2022.2
chmod 0755 /opt/pkg/petalinux2022.2
- 运行安装命令
petalinux的安装命令格式如下:
#--log <LOGFILE>用于指定安装日志输出路径,默认为当前路径
#-d|--dir <INSTALL_DIR>用于指定安装路径,默认为当前路径
#-p|--platform <arch_name>用于指定平台,可选"aarch64"、"arm"、"MicroBlaze",默认为所有平台进行安装
./petalinux-v2022.2-10141622-installer.run [--log <LOGFILE>] [-d|--dir <INSTALL_DIR>] [-p|--platform <arch_name>]
这里为所有平台安装petalinux到/opt/pkg/petalinux2022.2目录中:
chmod 0755 petalinux-v2022.2-10141622-installer.run
./petalinux-v2022.2-10141622-installer.run -d /opt/pkg/petalinux2022.2/
运行上述命令后,需要等待一段时间,当出现“Press Enter to display the license agreements”字样的时候,如下图所示:
此时按下键盘上的回车键 Enter,显示协议内容如下:
若不想关心协议内容可以按q键退出
返回后选y同意协议,后面还有几个协议,也采用相同的方法查看并同意便可继续进行安装。
3. 设置 Petalinux 环境变量
#进入安装目录
cd /opt/pkg/petalinux2022.2/
#设置Petalinux环境变量
source settings.sh
#若设置成功执行此命令应输出Petalinux安装路径
echo $PETALINUX
- 将设置 Petalinux 环境变量的命令设置成别名
每次打开终端使用 Petalinux 都需要设置相应的环境变量,为了方便可以将设置 Petalinux 环境变量的命令设置成别名,这样使用起来就方便些,设置别名方法的很简单,在终端输入如下命令:
#注意,此指令需要在设置Petalinux环境变量后运行,以后通过命令petalinux2022即可完成petalinux环境变量设置
echo "alias petalinux2022='source $PETALINUX/settings.sh'" >> ~/.bashrc
- 安装sstate-cache
在使用Petalinux编译工程的过程中会从网上下载一些软件包,若网络不稳定会导致下载失败,从而无法完成工程编译,sstate-cache中包含了 Petalinux 编译时需要的各种软件包和库,将其解压到/opt/pkg/sstate_arm_2022.2目录中即可,后边配置Petalinux工程时将“Yocto Settings —>Local sstate feeds settings—>local sstate feeds url”设置为“/opt/pkg/sstate_arm_2022.2/arm”即可。
#创建目录
mkdir -p /opt/pkg/sstate_arm_2022.2
#解压sstate-cache包
tar -vxf sstate_arm_2022.2_10071807.tar.gz -C /opt/pkg/sstate_arm_2022.2/
Vitis 安装
Vitis 是用来开发 Linux 应用的软件,使用这个软件开发 Linux 应用,既方便了工程管理,也免去了自己写Makefile的必要,此外在移植一些Linux 库或软件的时候还需要用到 Vitis 提供的编译工具链(因为petalinux2022.2没有直接提供编译Linux应用程序的编译器)。
下载 Vitis 安装包
可从“赛灵思官网”下载 Vitis 安装包,这里下载的是离线安装包。
安装 Vitis
- 解压下载的安装包
#文件很大,解压时间较长
tar -vxf Xilinx_Unified_2022.2_1014_8888.tar.gz
- 运行安装向导
./xsetup
- 点击Continue
- 点击next,进入到产品安装选择界面
- 在产品安装界面选择vitis(注意:vitis包含了Vivado套件,Vivado则是可以选择是否安装vitis),然后点击next,进入Vitis Software Platform 设置界面
- 在进入Vitis Software Platform 设置界面选择需要支持的器件,然后点击next,进入许可协议界面
- 在许可协议界面全部勾选同意,然后点击next,进入安装路径选择界面
- 安装路径选择界面选择安装路径(安装路径需要有读写权限),然后点击next,在弹出的路径确认窗口中点击yes,接下来进入“Installation Summary”界面
- 在“Installation Summary”界面,点击“Install”开始安装
- 加载Vitis环境变量,在需要Vitis提供的编译器时可以执行如下命令:
source /opt/pkg/Xilinx2022.2/Vitis/2022.2/settings64.sh
- 将加载Vitis环境变量的命令设置为别名,以后便可通过vitis2023快速完成Vitis环境变量的加载
echo "alias vitis2022='source /opt/pkg/Xilinx2022.2/Vitis/2022.2/settings64.sh'" >> ~/.bashrc
安装 JTAG cable 驱动
注意的是在安装 jtag 驱动之前,请不要将 jtag 下载器连接到电脑,已经接到电脑的,最好先拔掉
- 打开终端,进入到 petalinux 安装目录,可以看到有一个名为“tools”的目录,jtag驱动程序在该目录下。
cd /opt/pkg/petalinux2022.2/
2. 进入jtag驱动程序所在该目录,可以看到该目录下有一个名为“install_drivers”的文件
cd tools/xsct/data/xicom/cable_drivers/lin64/install_script/install_drivers
3. 以 root 权限执行install_drivers文件,安装 jtag 驱动程序
sudo ./install_drivers
4. 至此jtag 驱动安装完成,下面说下在遇到 jtag 驱动问题时,如何删除 jtag 驱动。注意如无特需情况,请不要执行下面的命令
sudo rm -f /etc/udev/rules.d/52-xilinx-digilent-usb.rules
sudo rm -f /etc/udev/rules.d/52-xilinx-ftdi-usb.rules
sudo rm -f /etc/udev/rules.d/52-xilinx-pcusb.rules