Vivado 2020.2 Linux 安装全记录:从零部署 FPGA 开发环境
最近带学生做 FPGA 项目,又碰上了那个老生常谈的问题——Vivado 在 Ubuntu 上怎么装?
别看 Xilinx 提供了安装包,真要在 Linux 下跑起来,尤其是非官方支持的 Ubuntu 20.04 系统上,光是依赖库、权限配置和图形界面兼容性就能卡住一大片人。更别说中间还夹着个 25GB 的压缩包下载断了三次……
今天我就以Ubuntu 20.04 + Vivado 2020.2为例,手把手带你走完这套完整的安装流程。不讲虚的,只说实战中踩过的坑、绕过的弯、解决掉的报错,让你少走弯路。
先确认你的系统“够格”吗?
在点开任何.bin文件之前,请务必先检查你这台机器是不是“能打”。
Vivado 虽然是 Java 写的 GUI 工具,但它背后调用了一大堆本地二进制程序(比如xst,ngdbuild),对系统环境要求并不低。
最关键的几项指标:
| 检查项 | 建议值 | 如何查看 |
|---|---|---|
| 操作系统 | Ubuntu 18.04/20.04 LTS | lsb_release -a |
| 可用磁盘空间 | ≥120GB | df -h / |
| 内存大小 | ≥16GB | free -g |
| 用户权限 | 需要 sudo 权限 | sudo whoami |
💡 小贴士:如果你用的是虚拟机(如 VMware 或 VirtualBox),建议分配至少 32GB 磁盘、16GB RAM,并启用 3D 加速。否则 Vivado 启动时可能直接卡死或闪退。
运行下面这些命令快速自检:
lsb_release -a # 查看系统版本 df -h / # 查看根目录剩余空间 free -g # 查看内存总量(单位为 GB) uname -m # 确认是 x86_64 架构如果输出显示你用的是 WSL1(Windows Subsystem for Linux),那也别挣扎了——图形界面基本跑不起来,建议换原生 Linux 或 WSL2 配合 X Server 使用。
下载安装包:别急,网络稳定最重要
Xilinx 不像其他软件那样提供一个.deb或.rpm包,而是通过一个叫Unified Installer的自解压脚本统一管理所有工具链。
获取方式如下:
- 打开 Xilinx Download Center
- 登录你的免费账户(没账号就注册一个)
- 搜索关键词:
Vivado HLx 2020.2: All OS installer Single-file Download - 找到文件名为
Xilinx_Unified_2020.2_1118_8884.tar.gz的压缩包(约 25GB)
⚠️ 注意事项:
-一定要用有线网络下载!这么大的文件,Wi-Fi 断一次就得重来。
- 推荐使用浏览器插件(如 Chrono)或多线程下载工具加速。
- 如果公司/学校有内部镜像源,优先走内网。
下载完成后,放到一个专用目录里,比如:
mkdir ~/xilinx_install && cd ~/xilinx_install mv ~/Downloads/Xilinx_Unified_2020.2_1118_8884.tar.gz . tar -xzvf Xilinx_Unified_2020.2_1118_8884.tar.gz这个过程会持续几分钟,解压出一堆子目录和可执行文件。完成后你会看到一个叫xsetup的图形安装器。
开始安装:一步步走过图形向导
进入解压后的目录,给安装器加上执行权限:
cd Xilinx_Unified_2020.2_1118_8884 chmod +x xsetup ./xsetup这时候应该弹出一个 Java 写的图形窗口。如果没有,请跳到后面“常见问题”部分排查。
图形安装流程详解
✅ 第一步:欢迎页 → 点 “Next”
没啥好说的,点就完事了。
✅ 第二步:登录 Xilinx 账户
输入你在官网注册的邮箱和密码。这是为了后续自动获取免费 License。
如果提示“Authentication failed”,检查是否开启了双因素认证,或者尝试换个网络环境。
✅ 第三步:选择安装类型
这里有两个选项:
-Quick (Typical):一键安装全部组件(推荐新手)
-Custom:自定义选装模块(推荐节省空间)
我建议选Custom,因为我们不需要 Vitis、PetaLinux 这些嵌入式开发套件。
✅ 第四步:选择产品组件
勾选以下内容即可满足绝大多数 FPGA 开发需求:
- ✅Vivado HL Design Edition
- ✅Devices > Series 7 / Ultrascale / Ultrascale+(根据你实际使用的板卡选择)
- ✅Common Utilities(包含 DocNav 文档浏览器、Cable Drivers 等)
❌ 可取消的模块:
- ❌ Vitis Unified Software Platform
- ❌ PetaLinux Tools
- ❌ Model Composer
- ❌ SysGen
这样可以节省近 30GB 空间!
✅ 第五步:设置安装路径
默认路径是/opt/Xilinx/Vivado/2020.2,但这个需要 root 权限才能写入。
为了避免后续权限麻烦,建议改成用户目录下:
/home/your_username/Xilinx/Vivado/2020.2确保父目录存在:
mkdir -p ~/Xilinx/Vivado✅ 第六步:开始安装
点击 “Install”,然后就是漫长的等待……通常耗时1~2 小时,取决于硬盘读写速度。
你可以趁这段时间泡杯茶,看看手册,或者翻翻《数字系统设计与 Verilog 入门》找点灵感。
安装后必做:配置环境变量
安装完不代表就能用了。默认情况下,你在终端敲vivado是找不到命令的。
我们需要把 Vivado 的bin目录加入系统的 PATH 中。
编辑当前用户的 shell 配置文件:
nano ~/.bashrc在文件末尾添加以下内容(注意替换用户名):
# Vivado 2020.2 环境变量 export XILINX_VIVADO=/home/your_username/Xilinx/Vivado/2020.2 export PATH=$XILINX_VIVADO/bin:$PATH # 可选:SDK 和文档导航 export XILINX_SDK=$XILINX_VIVADO/../SDK/2020.2 export XILINX_DOCNAV=$XILINX_VIVADO/data/docnav保存退出后刷新环境:
source ~/.bashrc验证是否成功:
vivado -version预期输出:
Vivado v2020.2 (64-bit) SW Build 3064766 on Wed Nov 18 09:12:45 MST 2020如果能看到版本号,恭喜你,核心环节搞定了!
常见问题及解决方案(都是血泪经验)
🔴 问题1:启动时报错libtinfo.so.5: cannot open shared object file
这是最经典的 Ubuntu 20.04 兼容性问题。
原因很简单:新版系统自带的是libtinfo.so.6,而 Vivado 还在依赖旧版 ncurses 库。
解法一:安装缺失的库
sudo apt install libncurses5解法二:手动建软链接(推荐)
sudo ln -s /lib/x86_64-linux-gnu/libtinfo.so.6 /lib/x86_64-linux-gnu/libtinfo.so.5⚠️ 注意路径可能略有不同,可用
find /lib -name "libtinfo*"查找实际位置。
🔴 问题2:运行./xsetup报错 “cannot execute binary file”
说明系统无法识别这个二进制文件。
检查点:
- 是否是 ARM 架构设备?❌ Vivado 只支持 x86_64。
- 是否缺少 32 位兼容库?某些组件仍为 32 位。
安装基础兼容库:
sudo dpkg --add-architecture i386 sudo apt update sudo apt install libc6:i386 libncurses5:i386 libstdc++6:i386🔴 问题3:图形界面打不开 / 卡顿严重
可能是没有启用图形转发,或者系统无桌面环境。
本地运行:
确保你是直接在 GNOME/KDE 桌面环境下打开终端运行的。
远程 SSH 连接?
请使用 X11 转发:
ssh -X username@host并在远程主机安装轻量级 GUI 支持:
sudo apt install xorg openbox libgl1-mesa-glx此外,关闭 Vivado 的硬件加速也能缓解卡顿:
export LIBGL_ALWAYS_INDIRECT=1加到.bashrc里永久生效。
🔴 问题4:JTAG 下载器识别不到(如 Digilent USB Cable)
Linux 默认不允许普通用户访问 USB 设备,必须配置 udev 规则。
创建规则文件:
sudo nano /etc/udev/rules.d/52-xilinx-pcusb.rules写入以下内容:
SUBSYSTEM=="usb", ATTRS{idVendor}=="03fd", MODE="0666"保存后重新加载规则:
sudo udevadm control --reload-rules sudo udevadm trigger拔插 USB 线,再打开 Hardware Manager 就能看到设备了。
让日常使用更方便:加个桌面快捷方式
每次都要打开终端输命令太麻烦?我们来创建一个桌面图标。
新建一个.desktop文件:
nano ~/.local/share/applications/vivado.desktop填入以下内容(路径按实际情况修改):
[Desktop Entry] Name=Vivado 2020.2 Comment=Integrated FPGA Design Environment Exec=/home/your_username/Xilinx/Vivado/2020.2/bin/vivado Icon=/home/your_username/Xilinx/Vivado/2020.2/doc/images/vivado_icon.png Terminal=false Type=Application Categories=Development;IDE; StartupNotify=true保存后,在应用程序菜单里搜索 “Vivado”,就能找到图标,双击即可启动。
实际开发流程示例:从代码到上板
假设你要做一个 UART 发送器,典型工作流是这样的:
- 打开 Vivado → Create New Project
- 添加 Verilog 源文件(如
uart_tx.v) - 设置目标器件(例如 xc7a35t-fgg484-2)
- 运行 Synthesis → Implementation → Generate Bitstream
- 连接开发板,打开 Hardware Manager,下载
.bit文件 - 使用 ILA 抓取内部信号波形,调试逻辑错误
整个过程高度依赖 Vivado 的稳定性。前期配置到位,后期才能专注设计本身。
关于 License:免费也能用得爽
很多人担心没 License 不能用。其实 Xilinx 提供了免费的 WebPACK License,支持 Artix-7、Kintex-7 等主流教学芯片。
获取步骤:
- 登录 Xilinx MyLicenses 页面
- 点击 “Get Free ISE/WebPACK License”
- 下载生成的
.lic文件 - 在 Vivado 中:Help → Load License → 导入文件
✅小技巧:把这个.lic文件复制到$HOME/.Xilinx/Xilinx.lic,以后每次启动都会自动加载,不用重复导入。
总结一下:哪些事绝对不能省
- 提前检查磁盘空间和系统版本
- 使用 Custom 安装模式精简组件
- 将安装路径设在用户目录避免权限问题
- 安装
libncurses5或建立libtinfo.so.5软链接 - 配置 udev 规则以便识别 JTAG 下载器
- 设置环境变量使
vivado命令全局可用 - 添加桌面快捷方式提升使用效率
这些步骤看着琐碎,但每一步都关系到你未来几个月能不能顺利开展 FPGA 学习或项目开发。
最后说一句:虽然现在 Xilinx 已被 AMD 收购,Vivado 也在逐步向 Vitis 平台融合,但2020.2 版本依然是目前最稳定、资料最丰富的选择之一,特别适合高校教学、科研原型和中小型项目开发。
掌握这套 Linux 下的安装与维护方法,不仅是打通工具链的第一关,更是迈向复杂数字系统设计的重要起点。
如果你在安装过程中遇到其他奇怪问题,欢迎留言讨论,我们一起排错。