动态 版块 发帖 消息 我的
Loading...
小绿叶技术博客
小绿叶技术博客
小绿叶技术Lv153   
centos ubuntu 自动安装 gcc12 g++12 make4 cmake3.2     


#!/bin/bash
# centos 安装 vscode 配置 gcc g++ cmake 开发环境

vscodeUrl="http://work.eisc.cn/ruanjian/ubuntu/server/"
dir="/datadisk/eisc/download/cmake"
installDir="/datadisk/eisc/server"

debList=(
    cmake-3.27.0-rc3.tar.gz
    make-4.4.tar.gz
    gcc-12.3.0.tar.gz
)

downloadGF=(
    https://ftp.gnu.org/gnu/gcc/gcc-12.3.0/gcc-12.3.0.tar.gz
    https://ftp.gnu.org/gnu/make/make-4.4.tar.gz
)


debrun=(
    cmake3
    make4
    gcc12
)

if [ $USER="root" ]
then 
    qx=" "
else
    qx="sudo"
fi

xitong=` cat /etc/os-release  | grep -w ID | awk -F"=" '{print $2}' | sed "s/\"//g" `
case "$xitong" in
    "centos" ) iCMD="yum" ; rpmCMD="rpm -qa " ; echo "当前是 centos 系统" ;;
    "ubuntu" ) iCMD="apt" ; rpmCMD="dpkg -l " ; echo "当前是 ubuntu 系统" ;;
esac

$qx $iCMD install -y openssl-devel gcc gcc-c++ g++ cmake make wget

$qx mkdir -p $dir $installDir  ; $qx chmod 777 $dir  $installDir; cd $dir 


download()
{
    for i in ${debList[*]}
    do
        debname=`echo $i | awk -F".tar.gz" '{print $1}'`
        debnameInstalled=`$qx $rpmCMD | grep -w "ii  $debname"` 
        debnameInstalledLength=${#debnameInstalled}

        $qx mkdir -p $installDir/$debname

        if [ $debnameInstalledLength -gt 1 ]
        then 
            echo "[ok] 该包 $i 已经安装,安装信息: $debnameInstalled"
            installIF=0
        else
            installIF=1
            echo "[runing] 正在检查是否下载安装包: $i"

            if [ ! -e $i ]
            then 
                echo "[runing] 当前没有下载,正在下载包:$i"
                $qx wget $vscodeUrl/$i 
                echo "[running] 正在解压 $i 到目录: $installDir/$debname " 
                $qx tar -xzvf $i -C $installDir
            else
                echo  "[ok] 已经下载: $i "
            fi

        fi

    done

}


debinstall(){

    for((i=0;i<=${#debrun[*]};i++))
    do 
        if [ ! -e /bin/${debrun[$i]} ]
        then
            debname=`echo ${debList[$i]} | awk -F".tar.gz" '{print $1}'`
            echo "[waring] 包没有安装 ${debList[$i]}  正在安装 文件不存在: /bin/${debrun[$i]}  " ; ls  /bin/${debrun[$i]}  ;  sleep 3;
            cd $installDir/$debname ; $qx ./configure ; $qx make install ; $qx rm -rf /bin/${debrun[$i]}
            $qx ln -s $installDir/$debname/bin/${debrun[$i]} /bin/${debrun[$i]}
        else
            echo "已经安装: ${debrun[$i]}"
        fi
    done
}

download ; debinstall

# 一键部署: wget eisc.cn/file/ubuntu/shell/server/cmakegcc.sh ; sudo chmod +x cmakegcc.sh  ; ./cmakegcc.sh 










 1  已被阅读了240次  楼主 2023-06-27 23:06:57
回复列表

回复:centos ubuntu 自动安装 gcc12 g++12 make4 cmake3.2

guest
登录之后更精彩~
Powered by HadSky 7.12.10
© 2015-2023 PuYueTian
您的IP:8.219.134.200,2023-10-04 00:55:25,Processed in 0.02945 second(s).
Powered by HadSky
小绿叶技术博客