#!/bin/bash CROSS_COMPILER=arm-none-eabi- LN_FILE_NAME=arm-m5plus-linux- VERSION=9-2020-q2 TAR_NAME=gcc-arm-none-eabi-9-2020-q2-update TOP_DIR=/opt/M5Plus TOOL_DIR=$TOP_DIR/${TAR_NAME} TAR_BIN_DIR=$TOOL_DIR/bin BIN_FILES=$TOOL_DIR/bin/{CROSS_COMPILER}* TOOLS_PKG="`dirname $0`/${TAR_NAME}.tar.bz2" set +e if [ -z "$1" ]; then echo "CROSS_COMPILER_PATH=$TAR_BIN_DIR" if [ -f $TOOL_DIR/version ]; then if [ -n "`grep ${VERSION} $TOOL_DIR/version`" ]; then echo "Cross Tools has been installed yet!" >&2 exit 0 fi else echo "Do not have version file" >&2 fi eval $0 force [ $? == 0 ] && exit 0 echo "sorry, you must have super privilege!" >&2 select choose in 'I have root passwd' 'I have sudo privilege' 'Try again' 'Ignore' 'Aboart' do case $choose in *root*) su -c "$0 force" [ $? == 0 ] && break ;; *sudo*) sudo $0 force [ $? == 0 ] && break ;; Try*) eval $0 force [ $? == 0 ] && break ;; Ignore) exit 0 ;; Aboart) exit 1 ;; *) echo "Invalid select, please try again!" >&2 continue ;; esac echo "Install cross tools failed!" >&2 done exit 0 fi mkdir -pv $TOP_DIR [ $? != 0 ] && exit 1 if [ -d $TOOL_DIR ] then echo "Delete exist directory..." >&2 rm $TOOL_DIR -rf else mkdir -pv $TOOL_DIR fi echo "Extract cross tools ..." >&2 tar -xjf $TOOLS_PKG -C $TOP_DIR [ $? != 0 ] && exit 1 # creat link rm $TAR_BIN_DIR -rf mkdir -p $TAR_BIN_DIR for armlinux in $BIN_FILES; do ln $armlinux $TAR_BIN_DIR/$LN_FILE_NAME`basename $armlinux | cut -b 34-` -sv done sed -i '/\/arm-hisiv100nptl-linux\//d' /etc/profile [ $? != 0 ] && exit 1 if [ -z "`grep "$TAR_BIN_DIR" < /etc/profile`" ]; then echo "export path $TAR_BIN_DIR" >&2 cat >> /etc/profile << EOF # `date` # Cross-Toolchain PATH export PATH="$TAR_BIN_DIR:\$PATH" # EOF [ $? != 0 ] && exit 1 else echo "skip export toolchains path" >&2 fi exit 0