交叉編譯工具鏈設置環境變量腳本

#!/bin/bash

print_help() {
cat <<EOF
Usage: command

command:
    export cross_compiler
    unset

example:
    source ./toolchain.sh export arm-linux-androideabi
    source ./toolchain.sh unset

EOF
}

main() {
    if [ $# -lt 1 ]; then
        print_help
        return
    fi
    COMMAND=$1

    if [ $COMMAND = "export" ]; then
        if [ $# -lt 2 ]; then
            print_help
            return
        fi
        CROSS=$2
        if [ ${CROSS:${#CROSS}-1:1} != "-" ]; then
            CROSS=${CROSS}-
        fi
        echo "CROSS  =   $CROSS"
        export CC=${CROSS}gcc
        export CXX=${CROSS}g++
        export AR=${CROSS}ar
        export AS=${CROSS}as
        export LD=${CROSS}ld
        export STRIP=${CROSS}strip
        export RANLIB=${CROSS}ranlib
        export NM=${CROSS}nm
    elif [ $COMMAND = "unset" ]; then
        unset  CC
        unset  CXX
        unset  AR
        unset  AS
        unset  LD
        unset  STRIP
        unset  RANLIB
        unset  NM
    else
        print_help
        return
    fi
}

main
echo "CC     =   $CC"
echo "CXX    =   $CXX"
echo "AR     =   $AR"
echo "AS     =   $AS"
echo "LD     =   $LD"
echo "STRIP  =   $STRIP"
echo "RANLIB =   $RANLIB"
echo "NM     =   $NM"

用法:

source ./toolchain.sh export arm-linux-androideabi
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章