【非root用户、CentOS系统】中使用源码安装gcc/g++的教程

1.引言

系统:CentOS-7.9
显卡驱动版本:460
CUDA Version: 11.2
🌼基于本地环境选择安装gcc-10.1.0

👉 gcc下载网址
gcc与cuda版本的对应关系:

2.安装说明

下载好对应的gcc的安装包并解压:

打开gcc-10.1.0/contrib/download_prerequisites,可以看到所需的依赖库及其版本信息。如下所示:
gmp='gmp-6.1.0.tar.bz2'
mpfr='mpfr-3.1.4.tar.bz2'
mpc='mpc-1.0.3.tar.gz'
isl='isl-0.18.tar.bz2'

python 复制代码
'''安装步骤:'''
 1. 全程共使用5个安装包(1个gcc,4个依赖包)。
 2. 首先,安装依赖包(注意它们的安装顺序)。
 3. 然后,安装gcc。(源码可在 https://gcc.gnu.org/ 或者 https://ftp.gnu.org/gnu/gcc/) 查找并下载。
 4. 最后,配置环境变量。

下载gcc依赖

方式1:在gcc-10.1.0文件夹路径运行以下指令下载依赖包

python 复制代码
./contrib/download_prerequisites

然后在gcc-10.1.0文件夹中就可以看到已经下载好的这4个依赖包。

方式2:也可以自行在官网下载依赖包:

🍓 依赖包下载地址,可以方便的查找适合或者最新的包:

【gmp】👉 https://ftp.gnu.org/gnu/gmp/

【isl】👉 https://gcc.gnu.org/pub/gcc/infrastructure/

【mpc】👉 https://ftp.gnu.org/gnu/mpc/

【mpfr】👉 https://ftp.gnu.org/gnu/mpfr/

3.依赖包安装

3.1 安装gmp

python 复制代码
$ cd /home/username/software/gcc-10.1.0/gmp-6.1.0/
$ mkdir my-install
$ cd my-install

$ ../configure --prefix=/home/username/software/gcc-10.1.0/gmp-6.1.0/my-install --enable-shared
$ make && make install

3.2 安装mpfr

python 复制代码
$ cd /home/username/software/gcc-10.1.0/mpfr-3.1.4/
$ mkdir my-install
$ cd my-install

$ ../configure --prefix=/home/username/software/gcc-10.1.0/mpfr-3.1.4/my-install --with-gmp=/home/username/software/gcc-10.1.0/gmp-6.1.0/my-install
$ make && make install

3.3 安装mpc

python 复制代码
$ cd /home/username/software/gcc-10.1.0/mpc-1.0.3/
$ mkdir my-install
$ cd my-install


$ ../configure --prefix=/home/username/software/gcc-10.1.0/mpc-1.0.3/my-install --with-mpfr=/home/username/software/gcc-10.1.0/mpfr-3.1.4/my-install --with-gmp=/home/username/software/gcc-10.1.0/gmp-6.1.0/my-install
$ make && make install

3.4 安装isl

python 复制代码
$ cd /home/username/software/gcc-10.1.0/
$ mkdir isl-build   #因isl不支持当前目录安装,所以需新建一个
$ cd isl-build
$ tar jxvf isl-0.18.tar.bz2
$ cd isl-0.18

$ ./configure --prefix=/home/username/software/isl_build --with-gmp-prefix=/home/username/software/gcc-10.1.0/gmp-6.1.0/my-install
$ make && make install

4. GCC安装

python 复制代码
$ cd /home/username/software/gcc-10.1.0/
$ mkdir my-install && cd my-install

$ ../configure  --prefix=/home/username/software/gcc-10.1.0/my-install --with-gmp=/home/username/software/gcc-10.1.0/gmp-6.1.0/my-install --with-mpfr=/home/username/software/gcc-10.1.0/mpfr-3.1.4/my-install --with-mpc=/home/username/software/gcc-10.1.0/mpc-1.0.3/my-install --with-isl=/home/username/software/isl_build --enable-checking=release --enable-languages=c,c++ --disable-multilib
$ make && make install

5.配置环境变量

python 复制代码
$ cd ~
$ vim .bashrc

在.bashrc中添加如下命令:
export PATH=/home/username/software/gcc-10.1.0/my-install/bin:$PATH

保存并退出.bashrc,然后在shell执行:
$ source .bashrc

最后,验证GCC是否安装成功:
$ gcc --version

参考文章:

1、【普通用户+亲测成功】CentOS中升级gcc/g++,非root用户使用源码安装教程,附带gcc和所有依赖包的下载地址,解决库未找到的错误

2、GCC 安装 (Linux + 非root)

相关推荐
数据智能老司机1 小时前
精通 Python 设计模式——创建型设计模式
python·设计模式·架构
数据智能老司机2 小时前
精通 Python 设计模式——SOLID 原则
python·设计模式·架构
c8i3 小时前
django中的FBV 和 CBV
python·django
c8i3 小时前
python中的闭包和装饰器
python
这里有鱼汤7 小时前
小白必看:QMT里的miniQMT入门教程
后端·python
TF男孩17 小时前
ARQ:一款低成本的消息队列,实现每秒万级吞吐
后端·python·消息队列
该用户已不存在1 天前
Mojo vs Python vs Rust: 2025年搞AI,该学哪个?
后端·python·rust
站大爷IP1 天前
Java调用Python的5种实用方案:从简单到进阶的全场景解析
python
用户8356290780511 天前
从手动编辑到代码生成:Python 助你高效创建 Word 文档
后端·python
c8i1 天前
python中类的基本结构、特殊属性于MRO理解
python