Ubuntu 18.04下永久配置Vivado与Petalinux环境变量失败的问题求助
Ubuntu 18.04下永久配置Vivado与Petalinux环境变量失败的问题求助
我目前在用Ubuntu 18.04,日常开发会用到Petalinux、Vivado这类Xilinx工具。每次要启动Vivado的时候,都得打开终端手动输入:
source /opt/Xilinx/Vivado/2020.2/settings64.sh
但这个配置只对当前打开的终端有效,新开一个终端就得重新执行一遍source命令,实在有点麻烦。
我记得编辑.profile文件可以让环境变量配置永久生效,于是我往这个文件里加了这么一行:
export PATH="$PATH:/opt/Xilinx/Vivado/2020.2/settings64.sh"
结果注销再重新登录系统之后,还是得手动source那个脚本才能正常打开Vivado。到底是我哪里操作错了啊?
另外附上我用的Petalinux的settings.sh脚本内容,供大家参考:
# # Setup script for PetaLinux development environment. # # Copyright (c) 1995-2013 Xilinx, Inc. All rights reserved. # SETTINGS_FILE='settings.sh' # The right location will be replaced by the installer XIL_SCRIPT_LOC="./" if [ $#!= 0 ]; then # The first argument is the location of PetaLinux Installation # Don't detect the installation location XIL_SCRIPT_LOC="$1" else # XIL_SCRIPT_LOC should point to script location if [ "$0" == "ksh" ]; then XIL_SCRIPT_LOC_TMP_UNI=`readlink -f ${XIL_ARG_}` else XIL_SCRIPT_LOC_TMP_UNI=$BASH_SOURCE fi XIL_SCRIPT_LOC_TMP_UNI=${XIL_SCRIPT_LOC_TMP_UNI%/*} if [ "$XIL_SCRIPT_LOC_TMP_UNI"!= "" ]; then if [ "$XIL_SCRIPT_LOC_TMP_UNI" == "settings.sh" ]; then XIL_SCRIPT_LOC_TMP_UNI="./" fi XIL_SCRIPT_LOC_TMP_UNI=`readlink -f ${XIL_SCRIPT_LOC_TMP_UNI}` if [ $? == 0 ]; then XIL_SCRIPT_LOC=${XIL_SCRIPT_LOC_TMP_UNI} fi fi unset XIL_SCRIPT_LOC_TMP_UNI fi export PETALINUX=`readlink -f "${XIL_SCRIPT_LOC}"` if echo "${PETALINUX}" | grep -q ' '; then echo "********************************************************" echo "WARNING: PetaLinux SDK installation path contains spaces" echo "WARNING: You are STRONGLY recommend to fix this". echo "********************************************************" fi export PETALINUX_VER=2020.2 export XSCT_TOOLCHAIN="${PETALINUX}/tools/xsct" # Figure out host system architecture # for now, only linux-i386 supported # # Add toolchains to user's search path # PATH="${XSCT_TOOLCHAIN}/gnu/aarch32/lin/gcc-arm-none-eabi/bin:${PATH}" PATH="${XSCT_TOOLCHAIN}/gnu/aarch64/lin/aarch64-none/bin:${PATH}" PATH="${XSCT_TOOLCHAIN}/gnu/armr5/lin/gcc-arm-none-eabi/bin:${PATH}" PATH="${XSCT_TOOLCHAIN}/gnu/microblaze/lin/bin:${PATH}" # # Add required binary tools to the user's search path # PATH="${PETALINUX}/tools/xsct/petalinux/bin:${PETALINUX}/tools/common/petalinux/bin:${PATH}" # # Check for "." or ".\" in the path - it's broken # echo "${PATH}" | tr ":" "\n" | grep '^\./*$' > /dev/null && echo "WARNING: '.' detected in PATH - fixing it." 1>&2 PATH=`echo ${PATH} | tr ":" "\n" | grep -v '^\./*$' | tr "\n" ":"` # Strip any trailing or multi-colons - they are interpreted as '.' PATH=$(echo ${PATH} | sed -e 's/:*$//g' -e 's/::*/:/g') export PATH echo PetaLinux environment set to \'${PETALINUX}\' for s in /bin/sh sh; do if! $s --version 2>/dev/null | grep -q "^GNU bash"; then echo "WARNING: $s is not bash! " echo "bash is PetaLinux recommended shell. Please set your default shell to bash." break fi done if! echo $SHELL | grep -q "bash"; then echo "WARNING: $SHELL is not bash! " echo "/bin/bash is Petalinux recommended SHELL variable. Please set your SHELL variable to /bin/bash." fi "${PETALINUX}"/tools/common/petalinux//utils/petalinux-env-check
备注:内容来源于stack exchange,提问作者Jonathan
相关产品推荐
相关产品推荐

