ArchLinux 安装和配置 Vivado


😪

查看 PKGBUILD

https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=vivado

yay -S vivado

用拿到的 md5 值,去 vivado 官网下载安装包,复制到对应目录

 

修改配置文件

安装之前,修改配置文件以安装完整的 vivado,否则找不到实验所需要的设备,因为设置中默认关闭了所有模块的安装。

顺便提一下,可以将 PKGBUILD 中的 md5sums 改为 SKIP 以避免每次安装都重复检查,消耗时间。

diff --git a/PKGBUILD b/PKGBUILD
index a27df05..b3e8041 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -119,8 +119,7 @@ source=(
 )
 
 md5sums=(
-    '0ca31a787bbdff82b55213522e604446'
-    # Checksum from https://www.xilinx.com/support/download.html
+    'SKIP'
 
     '69d14ad64f6ec44e041eaa8ffcb6f87c'
     SKIP
diff --git a/install_config-vivado.txt b/install_config-vivado.txt
index 42ffbef..9ea5625 100644
--- a/install_config-vivado.txt
+++ b/install_config-vivado.txt
@@ -7,7 +7,7 @@ Product=Vivado
 Destination=/tools/Xilinx
 
 # Choose the Products/Devices the you would like to install.
-Modules=Kintex UltraScale:0,Versal AI Edge Series:0,Vitis Networking P4:0,Artix UltraScale+:0,Spartan-7:0,Artix-7:0,Vitis Model Composer(Toolbox for MATLAB and Simulink. Includes the functionality of System Generator for DSP):0,Versal Prime Series:0,DocNav:0,Zynq UltraScale+ MPSoC:0,Zynq-7000:1,Virtex UltraScale+:0,Virtex UltraScale+ HBM:0,Power Design Manager (PDM):0,Vitis Embedded Development:0,Kintex UltraScale+:0,Virtex UltraScale+ 58G:0,Kintex-7:0,Install Devices for Kria SOMs and Starter Kits:0,Versal ACAP:0
+Modules=Kintex UltraScale:1,Versal AI Edge Series:0,Vitis Networking P4:0,Artix UltraScale+:1,Spartan-7:1,Artix-7:1,Vitis Model Composer(Toolbox for MATLAB and Simulink. Includes the functionality of System Generator for DSP):1,Versal Prime Series:0,DocNav:1,Zynq UltraScale+ MPSoC:1,Zynq-7000:1,Virtex UltraScale+:1,Virtex UltraScale+ HBM:1,Power Design Manager (PDM):0,Vitis Embedded Development:0,Kintex UltraScale+:1,Virtex UltraScale+ 58G:1,Kintex-7:1,Install Devices for Kria SOMs and Starter Kits:1,Versal ACAP:0
 
 # Choose the post install scripts you'd like to run as part of the finalization step. Please note that some of these scripts may require user interaction during runtime.
 InstallOptions=
我是怎么知道的呢?安装一次之后发现什么设备都没有,xsetup -b ConfigGen 可以生成默认的配置文件,diff 发现很多模块都被设置为了 0 ,即不安装。

 

编辑启动脚本

$HOME/.local/bin/vivado

#!/bin/bash
VIVADO_PATH=/opt/Xilinx/Vivado/2024.2
VIVADO_TMP_DIR=$(mktemp -d /tmp/vivado.XXXX) 
cd $VIVADO_TMP_DIR
source /opt/Xilinx/Vivado/2024.2/settings64.sh
$VIVADO_PATH/bin/vivado "$@"

 

使用外部编辑器

$HOME/.local/bin/remotevim

#!/usr/bin/env bash
OPTSTR="r:f:l:"

help(){
    printf "Usage %s: [-f file] [-l line-number]\n"
}

if [[ $# -lt 1 ]]; then help; exit 0; fi

while getopts ${OPTSTR} opt; do
    case ${opt} in
        f) file=${OPTARG};;
        l) line=${OPTARG};;
        :) 
            help
            exit 0
            ;;
        ?)
            help
            exit 0
    esac
done

shift $(($OPTIND - 1))
if [[ $# -gt 0 ]]; then help; exit 0; fi

# Environments for vm remote control
export DISPLAY=:0
export LANG=en_US.UTF-8 
# st -e vim -p --remote-tab-silent +${line} ${file} &
gvim -p --remote-tab-silent +${line} ${file} &
disown

编辑器选项

ssh local $HOME/.local/bin/remotevim -f "[file name]" -l [line number]

其中 local 为 $HOME/.ssh/config 中的

Host local
    HostName localhost
    User username

运行时间 427 天 | 总访问量