【非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)

相关推荐
一代明君Kevin学长2 分钟前
快速自定义一个带进度监控的文件资源类
java·前端·后端·python·文件上传·文件服务·文件流
HappRobot15 分钟前
python类和对象
开发语言·python
盼哥PyAI实验室28 分钟前
Python YAML配置管理:12306项目的灵活配置方案
开发语言·python
Github掘金计划1 小时前
开发者狂喜!GitHub 官方开源:支持 Copilot/Cursor,规范即代码,27k Star 封神!
java·python·kafka·github·copilot
shenzhenNBA1 小时前
python用openpyxl操作excel-单元格样式操作
python·excel·openpyxl·单元格样式
岁月宁静1 小时前
多模态 Agent 技术全景解析 — 从模型能力、Agent 架构到工程化与商业落地
python·agent
试着1 小时前
【VSCode+AI+测试】连接ai大模型
ide·人工智能·vscode·python·学习·编辑器·ai-test
零小陈上(shouhou6668889)2 小时前
YOLOv8+PyQt5海洋船只检测(可以重新训练,yolov8模型,从图像、视频和摄像头三种路径识别检测)
开发语言·python·yolo
znhy_232 小时前
day36打卡
python
gf13211112 小时前
python_字幕文本、音频、视频一键组合
python·音视频·swift