gcc的安装
# gcc9.3.0 安装
# 先决条件
# 安装基础版本
sudo apt-get update
sudo apt-get install build-essential
# 需要先安装基础版本的gcc,才能编译gcc9.3.0里的东西
# root管理权限
su root
# 或者
sudo root
# 准备工作
# 1_1下载GCC-9.3.0安装包
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz
# 1_2 解压安装包
tar -xvf gcc-9.3.0.tar.gz
# 1_3进入GCC解压目录
cd gcc-9.3.0
# 2_1下载依赖版本gmp-6.1.0
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gmp/gmp-6.1.0.tar.xz
# 解压
tar -xvf gmp-6.1.0.tar.xz
# 改名成需要的目录名
mv gmp-6.1.0 gmp
# 2_2 下载依赖版本mpfr-3.1.4
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/mpfr/mpfr-3.1.4.tar.gz
# 解压
tar -xvf mpfr-3.1.4.tar.gz
# 改名成需要的目录名
mv mpfr-3.1.4 mpfr
# 2_3 下载依赖版本mpc-1.0.3
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/mpc/mpc-1.0.3.tar.gz
# 解压
tar -xvf mpc-1.0.3.tar.gz
# 改名成需要的目录名
mv mpc-1.0.3 mpc
# 其依赖关系为 gcc->mpc->mpfr->gmp->m4
# 编译安装
# 1 设置配置信息
# 建立编译目录,并进入
mkdir gcc-build
cd gcc-build
#(/usr/local/gcc-9.3.0是新版本GCC的安装目录,可以更换,原始gcc运行目录为/usr/bin/gcc)
../configure --prefix=/usr/local/gcc-9.3.0 --disable-multilib --enable-languages=c,c++
# 2 编译
# 4是cpu核心数,可根据cpu核数设置,因为编译过程很长,尽可能使用全部cpu资源
make -j 4
# 3 安装
make install -j 4
# 替换命令链接和配置环境变量
# 1. 替换gcc cc命令的链接
ln -s /usr/local/gcc-9.3.0 /usr/local/gcc
ln -s /usr/local/gcc-9.3.0/bin/gcc /usr/local/cc
如果发生错误 可以先备份原来的链接比如
mv /usr/local/gcc /usr/local/gcc.bak
mv /usr/local/cc /usr/local/cc.bak
# 2. 配置环境变量
# 将以下配置写入环境变量中,如全局变量/etc/profile 或个人变量~./.bashrc 文件最后
export PATH=/usr/local/gcc/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/gcc/lib64
export MANPATH=/usr/local/gcc/share/man:$MANPATH
# 3. 使用 . /etc/profile 或 . .bashrc 可以更新环境变量(注意有一个'.')
# 检查安装是否成功
# 使用以下命令
gcc -v
g++ -v
cc -v
# 可以得到类似的结果说明安装成功
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc-9.3.0/libexec/gcc/x86_64-pc-linux-gnu/9.3.0/lto-wrapper
目标:x86_64-pc-linux-gnu
配置为:../configure --prefix=/usr/local/gcc-9.3.0 --disable-multilib --enable-languages=c,c++
线程模型:posix
gcc 版本 9.3.0 (GCC)
# 正常安装显卡驱动或cuda即可,注意gcc与cuda的匹配。
整完发现cc的版本不对,需要如下操作
sudo ln -sf /usr/local/gcc-9.3.0/bin/gcc gcc
sudo ln -sf /usr/local/gcc-9.3.0/bin/c++ c++
通过ll查看当前链接