目录
- Petalinux 简介
- 安装前准备
- 1. 硬件要求
- 2. 软件环境
- 3. 创建专用安装目录
- 安装依赖包
- 1. Ubuntu/Debian 系统
- 2. RedHat/CentOS/Fedora 系统
- 下载和安装 Petalinux 工具链
- 1. 下载安装包
- 2. 运行安装脚本
- 3. 配置环境变量
- 验证安装
- 常见问题与解决方案
- 1.
ERROR: tcl error错误 - 2. 缺少
libncurses.so.5或libtinfo.so.5 - 3. 安装路径问题
- 4.
make命令找不到
- 1.
Petalinux 简介
Petalinux 是由 Xilinx(现为 AMD)提供的一款免费的、完整的嵌入式 Linux 解决方案,它不是一个简单的 Linux 内核,而是一个强大的工具集,用于在 Xilinx 的 Zynq、Zynq UltraScale+ MPSoC 和 Versal 架构的 SoC 上定制、构建和部署完整的 Linux 系统。

Petalinux 的核心功能包括:
- 设备树生成与修改:自动生成并管理复杂的设备树源文件。
- 根文件系统构建:支持多种根文件系统类型(如 BusyBox, Yocto Project)。
- U-Boot 引导加载程序定制:修改和重新编译 U-Boot。
- 内核编译与配置:定制 Linux 内核,添加或移除驱动和功能。
- 应用交叉编译:提供工具链,用于在宿主机上编译目标板运行的应用程序。
安装前准备
1. 硬件要求
- CPU: 64-bit x86 多核处理器 (推荐 4 核或以上)
- 内存: 至少 16 GB RAM (推荐 32 GB 或以上,因为编译过程非常消耗内存)
- 硬盘空间: 至少 100 GB 可用空间 (SSD 强烈推荐,可大幅提升编译速度)
- 网络: 稳定的互联网连接,用于下载依赖包和工具链。
2. 软件环境
强烈建议在 虚拟机 中进行安装,以避免与宿主机的环境冲突。
- 操作系统: Ubuntu 20.04 LTS (64-bit) 是官方最推荐且经过充分测试的系统,本教程将以此为例。
- 虚拟机软件: VMware Workstation / Player, VirtualBox 等。
- 关闭 Swap: 为了获得最佳性能,建议在安装前关闭系统的 Swap 分区。
sudo swapoff -a # (可选) 编辑 /etc/fstab 文件,注释掉 swap 相关行,使其永久关闭
3. 创建专用安装目录
为了保持系统整洁,我们创建一个专门用于存放 Xilinx 工具的目录。
# 在你的用户主目录下创建一个文件夹 mkdir ~/Xilinx cd ~/Xilinx
安装依赖包
这一步至关重要,缺少任何一个依赖都可能导致安装失败或后续工具链无法正常工作。

1. Ubuntu/Debian 系统
打开终端,执行以下命令:
# 更新软件包列表 sudo apt-get update # 安装必要的依赖包 sudo apt-get install -y tofrodos gawk xvfb xterm net-tools libncurses-dev libncursesw5-dev libtinfo5 zlib1g-dev gcc git make libssl-dev flex bison libelf-dev dwarves
注意: libtinfo5 和 libncursesw5-dev 是关键,它们可能会被 libncurses-dev 部分覆盖,但确保它们存在可以避免很多后续问题。
2. RedHat/CentOS/Fedora 系统
对于 RedHat/CentOS 7/8 或 Fedora 系统,可以使用 yum 或 dnf:
# 对于 CentOS/RHEL 7/8 sudo yum groupinstall -y "Development Tools" sudo yum install -y tofrodos gawk xorg-x11-server-Xvfb xterm net-tools ncurses-devel openssl-devel zlib-devel git libelf-devel dwarves # 对于 Fedora sudo dnf groupinstall -y "Development Tools" sudo dnf install -y tofrodos gawk xorg-x11-server-Xvfb xterm net-tools ncurses-devel openssl-devel zlib-devel git libelf-devel dwarves
下载和安装 Petalinux 工具链
1. 下载安装包
-
访问 AMD Xilinx 官网下载中心:https://www.xilinx.com/support/download.html
-
在 "Design Tools" -> "Vivado ML Edition / HLx Edition" 下找到对应的版本(2025.1)。
-
下载 Petalinux Tools 安装文件,它通常是一个
.iso文件,petalinux-v2025.1-final-2301008.iso。 -
将下载好的
.iso文件上传到你的 Ubuntu 虚拟机中,可以放在~/Xilinx目录下。
2. 运行安装脚本
-
挂载 ISO 文件:
# 进入存放 ISO 的目录 cd ~/Xilinx # 创建一个挂载点 mkdir ~/Xilinx/petalinux_mount # 挂载 ISO 文件 (请替换为你的实际文件名) sudo mount -o loop petalinux-v2025.1-final-2301008.iso ~/Xilinx/petalinux_mount
-
运行安装程序:
# 进入挂载目录 cd ~/Xilinx/petalinux_mount # 运行安装脚本 # 注意:请确保你的终端支持 256 色,否则可能会报错,如果报错,可以尝试使用 `xterm` 或 `export COLORTERM=truecolor` sudo ./xsetup
-
图形界面安装步骤:
- Welcome: 点击 "Next"。
- EULA: 勾选 "I accept the terms of the license agreement",然后点击 "Next"。
- Choose Install Folder: 保持默认路径
/opt/petalinux/2025.1。强烈建议不要修改此路径,因为它与后续的环境变量配置直接相关,点击 "Next"。 - Shortcuts: 选择是否创建桌面快捷方式,点击 "Next"。
- Install: 点击 "Install" 开始安装,等待进度条完成,这可能需要一些时间。
- Install Complete: 安装完成后,点击 "OK"。
-
卸载 ISO:
# 回到主目录 cd ~ # 卸载挂载点 sudo umount ~/Xilinx/petalinux_mount # (可选) 删除挂载点目录 rmdir ~/Xilinx/petalinux_mount
3. 配置环境变量
为了让系统能在任意终端中找到 Petalinux 命令,需要将 Petalinux 的路径添加到环境变量 PATH 中。
-
打开
.bashrc文件:gedit ~/.bashrc
(或者使用你喜欢的编辑器,如
vim,nano) -
在文件末尾添加以下内容:
# Petalinux Settings export PATH=/opt/petalinux/2025.1/tools/common/petalinux-v$PETALINUX_VER/bin:$PATH export PETALINUX_VER=2025.1 export PYTHON=python3 export PETALINUX=/opt/petalinux/2025.1 export PETALINUX_SDK=/opt/petalinux/2025.1/components/yocto
重要提示:
- 确保路径
/opt/petalinux/2025.1与你的实际安装路径一致。 export PYTHON=python3是必须的,因为新版 Petalinux 默认使用 Python 3。
- 确保路径
-
保存并关闭文件。
-
让配置生效:
source ~/.bashrc
或者直接打开一个新的终端窗口。
验证安装
你可以通过运行以下命令来验证 Petalinux 是否安装成功:
petalinux-util --version
如果安装成功,你会看到类似以下的输出,显示了版本信息:
PetaLinux utility v2025.1 (Build: 2301008)
Copyright (C) 2012-2025, Advanced Micro Devices, Inc.
还可以尝试创建一个新项目来验证工具链的完整性:
# 创建一个测试项目 petalinux-create -t project -n test_project # 进入项目目录 cd test_project # 执行配置 (这会下载一些依赖,并检查环境) # 这里我们选择一个通用的 Zynq 板卡模板 petalinux-config --get-hw-description= --template=zynq # 在弹出的配置界面中,直接按 "OK" 保存退出 # 然后执行构建 petalinux-build
第一次运行 petalinux-build 时,系统会下载大量 Yocto 编译所需的源码,这个过程非常耗时,请耐心等待,如果最终成功,说明你的安装和配置是正确的。
常见问题与解决方案
1. ERROR: tcl error 错误
现象: 运行 petalinux-config 或 petalinux-build 时,出现类似 ERROR: tcl error in target... 的错误。
原因: 通常是终端颜色或字符编码问题。
解决方案:
- 在运行 Petalinux 命令前,先设置环境变量:
export COLORTERM=truecolor
- 或者,使用
xterm来运行命令:xterm -e "petalinux-config ..."
- 确保你的终端支持 256 色。
2. 缺少 libncurses.so.5 或 libtinfo.so.5
现象: 运行某些命令时,提示找不到库文件。
原因: 新版 Ubuntu 使用 libncurses.so.6,但一些旧工具依赖 libncurses.so.5。
解决方案 (Ubuntu):
# 安装兼容库 sudo apt-get install -y libncurses5 libtinfo5 # 创建符号链接 (一种替代方案) sudo ln -s /lib/x86_64-linux-gnu/libncurses.so.6 /lib/x86_64-linux-gnu/libncurses.so.5 sudo ln -s /lib/x86_64-linux-gnu/libtinfo.so.6 /lib/x86_64-linux-gnu/libtinfo.so.5
3. 安装路径问题
现象: 所有命令都提示 "command not found"。
原因: ~/.bashrc 中的环境变量路径不正确。
解决方案:
- 检查
~/.bashrc文件,确保export PATH=/opt/petalinux/...这一行路径完全正确。 - 确保你执行了
source ~/.bashrc或重启了终端。 - 绝对不要将 Petalinux 安装在包含空格的路径中(如
/home/user/My Documents/Petalinux),这会引发各种难以排查的问题。
4. make 命令找不到
现象: 提示 make: command not found。
原因: build-essential 包没有安装。
解决方案:
sudo apt-get install -y build-essential
恭喜!如果你已经成功完成了以上所有步骤,并且通过了验证测试,那么你的 Petalinux 开发环境就已经准备就绪了。
后续步骤:
- 获取硬件描述文件: 从 Vivado 中导出你的硬件平台(
.hdf或.xsa文件)。 - 创建新项目: 使用
petalinux-create -t project -n <project_name>创建一个新项目。 - 导入硬件: 使用
petalinux-config --get-hw-description=<path_to_xsa>导入硬件描述文件。 - 开始定制: 根据你的需求,配置内核、设备树、根文件系统和 U-Boot。
- 编译和部署: 使用
petalinux-build编译整个系统,然后使用petalinux-package打包成 BOOT.BIN 和 image.ub 文件,最后烧录到目标板。
Petalinux 学习曲线较陡,但功能强大,遇到问题时,请务必查阅官方文档和社区论坛,祝你开发顺利!
