CentOS7安装指定版本gcc

一、使用yum安装默认gcc

因为编译安装gcc,是需要用gcc编译的,所以首先需要安装默认gcc

yum install gcc
yum install gcc-c++

如果没有yum源,可以先配置阿里源

cd /etc/yum.repo.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 重新加载yum源
yum clean all
yum makecache

二、安装指定版本gcc

1. 下载gcc(选用清华源)
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.gz
2. 将压缩包移动到/usr/local目录下解压

                
### 安装和管理多个版本GCC 编译器 为了在 CentOS 7安装和管理多个版本GCC 编译器,可以采用多种方法来实现这一目标。以下是几种常见的方式: #### 方法一:通过软件集合(Software Collections) Software Collections 提供了一种安全的方法,在不影响系统默认工具链的情况下安装额外的应用程序及其依赖项。 - **启用 SCL 存储库** ```bash sudo yum install centos-release-scl ``` - **安装特定版本GCC** 例如,要安装 GCC 8 版本: ```bash sudo yum install devtoolset-8-gcc devtoolset-8-gcc-c++ ``` 这会将 GCC 8 添加到系统的环境中,而不会覆盖现有的默认编译器版本[^1]。 - **激活特定版本GCC** 每次想要使用已安装的不同版本GCC 时,可以通过命令行临时加载它: ```bash scl enable devtoolset-8 bash ``` 此操作将在新的 shell 中启动,并设置环境变量以便于访问所选版本GCC 工具集。 #### 方法二:源码编译安装自定义路径下的 GCC 如果需要更灵活地控制安装位置以及配置选项,则可以选择从源代码构建并安装不同版本GCC 到不同的目录下。 - **准备必要的开发工具** 确保已经安装了基础的构建工具和其他必需组件: ```bash sudo yum groupinstall "Development Tools" sudo yum install gmp-devel mpfr-devel libmpc-devel ``` - **下载所需版本GCC 源码包** 可以从官方 GNU FTP 站点获取所需的 GCC 发布版本压缩文件。 - **解压并配置** 假设选择了 GCC 9.x 版本作为例子: ```bash tar -xf gcc-9.3.0.tar.gz cd gcc-9.3.0 ./contrib/download_prerequisites mkdir build && cd build ../configure --prefix=/opt/gcc-9.3.0 --enable-languages=c,c++ --disable-multilib make -j$(nproc) sudo make install ``` 上述过程会在 `/opt/gcc-9.3.0` 下创建一个新的 GCC 实例[^2]。 - **切换使用的 GCC 版本** 当希望调用某个具体版本GCC 进行编译工作时,可通过更新 `PATH` 或者直接指定全路径的方式来完成: ```bash export PATH=/opt/gcc-9.3.0/bin:$PATH ``` 或者对于单次编译任务来说可以直接指明绝对路径: ```bash /opt/gcc-9.3.0/bin/gcc ... ``` 这种方法允许在同一台机器上共存多个独立版本而不互相干扰。 #### 方法三:利用容器化技术隔离各版本环境 Docker 是一种流行的轻量级虚拟化解决方案,非常适合用来运行具有不同需求的工作负载。通过 Dockerfile 文件定制镜像,可以在其中预置好各种版本GCC 和其他相关依赖关系,从而轻松管理和分发这些环境给团队成员或其他开发者社区。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值