2024-01-29 ubuntu 用脚本设置安装交叉编译工具链路径方法,设置PATH环境变量

一、设置PATH环境变量的方法,建议用~/.bash_profile的方法,不然在ssh登录的时候可能没有设置PATH.

二、下面的完整的脚本,里面的echo "export PATH=build_toolchain_path:\\PATH" >> $HOME/.bashrc 就是把交叉编译路径写写到.bashrc设置PATH环境变量。

#!/bin/bash

# command to install toolchain in the "dirname" which you Specified.
# source ./env_install_toolchain.sh dirname
INSTALL_TARGET_DIR=
toolchain_cross=`pwd`
toolchain_cross=$(basename ${toolchain_cross})
if [ -n "$1" ]; then
	if [ -d "$1" ]; then
		INSTALL_TARGET_DIR=$1
		build_toolchain_path="${INSTALL_TARGET_DIR}/$toolchain_cross/bin"
	else
		echo "error: not found dir $1"
		echo "command format: source $0 [dirname]"
		echo "     [dirname] is optional"
		return 1
	fi
else
	build_toolchain_path="${PWD}/bin"
fi

# default 1
selectopt=1

case $selectopt in
        0)
                if [ -n "$INSTALL_TARGET_DIR" ]; then
                        sudo cp -rfa $PWD $INSTALL_TARGET_DIR
                fi
                sudo echo "export PATH=$build_toolchain_path/:\$PATH" >> /etc/profile
                source /etc/profile
                ;;
        1)
                if [ -n "$INSTALL_TARGET_DIR" ]; then
                        cp -rfa $PWD $INSTALL_TARGET_DIR
                fi
                cmdsed="sed -i '/^export PATH.*${toolchain_cross}\/bin/d' \$HOME\/.bashrc"
                eval $cmdsed
                echo "export PATH=$build_toolchain_path:\$PATH" >> $HOME/.bashrc
                source $HOME/.bashrc
                cmdsed="sed -i '/^export PATH.*${toolchain_cross}\/bin/d' \$HOME\/.bash_profile"
                eval $cmdsed
                echo "export PATH=$build_toolchain_path:\$PATH" >> $HOME/.bash_profile
                source $HOME/.bash_profile
                ;;
        *)
                echo "Please check input."
                ;;
esac

三、运行完上面的脚本之后的效果。

相关推荐
hhw19911211 分钟前
JavaScript知识点1
开发语言·前端·javascript
患得患失94914 分钟前
【前端】【功能函数】treeMapEach,对每个节点进行自定义转换的实用函数
前端
卡夫卡的小熊猫2 小时前
vue前端菜单权限控制
前端
祈澈菇凉3 小时前
什么是 Vue 的自定义事件?如何触发和监听?
前端·javascript·vue.js
2301_766536055 小时前
调试无痛入手
开发语言·前端
@大迁世界6 小时前
构建 Next.js 应用时的安全保障与风险防范措施
开发语言·前端·javascript·安全·ecmascript
IT、木易7 小时前
ES6 新特性,优势和用法?
前端·ecmascript·es6
计算机软件程序设计7 小时前
vue和微信小程序处理markdown格式数据
前端·vue.js·微信小程序
指尖时光.7 小时前
【前端进阶】01 重识HTML,掌握页面基本结构和加载过程
前端·html
前端御书房7 小时前
Pinia 3.0 正式发布:全面拥抱 Vue 3 生态,升级指南与实战教程
前端·javascript·vue.js