Ubuntu: Linux系统下gcc(g++)任意版本切换

本文详细介绍了在Ubuntu系统中如何安装并切换gcc/g++的不同版本,包括从安装最新版本到安装并确认gcc4.8和gcc4.9版本的步骤,以解决深度学习等场景下对特定编译器版本的需求。

    我们在Linux系统下用的比较多的应该是Ubuntu系统,但是最近会发现一些比较坑的问题,比如我在跑深度学习的程序的时候就会遇到编译Caffe的时候需要g++4.4但是后续步骤需要的版本是g++4.9,这给我们调参各方面带来极大的不便。所以我整理了很多其他博客,归纳出一套行之有效的方法来,跟大家分享:

GCC是一个用于linux系统下编程的编译器
是一个用于编程开发的自由编译器。最初,GCC只是一个C语言编译器,它是GNU C Compiler 的英文缩写。随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含众多语言的编译器了。其中包括 C,C++, Ada,
Object C和Java等。所以,GCC也由原来的GNU C Compiler变为GNU Compiler Collection。也就是 GNU编译器家族的意思。 当然,如今的GCC借助于它的特性,具有了交叉编译器的功能,即在一个平台下编译另一个平台的代码
   我们无非是一新一旧的搭配,来适合更加多的安装包的协调,所以我们对于最新版本还是有追求的:  

1、gcc最新版本安装

<think>我们之前已经回答过类似问题,但根据用户当前提问,需要重新组织答案。 注意:用户的问题是“怎么更新gcc/g++版本?”,我们需要用中文回答,并在最后提出3-5个相关问题,且第一行必须是“§§相关问题§§”。 根据之前的回答,我们可以总结为两种主要方法:包管理器安装(推荐)和源码编译安装(通用但复杂)。 由于用户没有指定系统,我们可以分别说明Ubuntu/Debian和CentOS/RHEL的包管理器方法,以及通用的源码编译方法。 同时,注意格式要求:在代码块中展示命令,并在最后提出相关问题。 我们将按照以下结构回答: 1. 介绍两种方法(包管理器和源码编译) 2. 分别给出Ubuntu/Debian和CentOS/RHEL的包管理器升级步骤 3. 给出源码编译的通用步骤 4. 注意事项 5. 最后提出3-5个相关问题,以“§§相关问题§§”开头 注意:由于用户可能是在任意Linux发行版上,所以我们需要涵盖常见的发行版。 但是,用户的问题比较简短,我们可以直接给出答案。 </think>### 在Linux中升级GCC/G++版本的方法 以下是两种主流升级方式,适用于不同Linux发行版: #### 📦 方法1:通过包管理器安装(推荐) **Ubuntu/Debian系统** ```bash # 添加工具链PPA仓库 sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update # 安装指定版本(示例为GCC-14) sudo apt install gcc-14 g++-14 -y # 设置默认版本 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-14 100 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-14 100 # 验证 gcc --version && g++ --version ``` **CentOS/RHEL系统** ```bash # 启用SCL仓库并安装(示例为GCC-13) sudo yum install centos-release-scl -y sudo yum install devtoolset-13-gcc* -y # 启用新版编译器 scl enable devtoolset-13 bash # 永久生效(在~/.bashrc添加) echo "source /opt/rh/devtoolset-13/enable" >> ~/.bashrc ``` #### ⚙️ 方法2:源码编译安装(更灵活) ```bash # 1. 下载源码 wget https://ftp.gnu.org/gnu/gcc/gcc-14.1.0/gcc-14.1.0.tar.gz tar xvf gcc-14.1.0.tar.gz && cd gcc-14.1.0 # 2. 下载依赖库 ./contrib/download_prerequisites # 3. 配置编译选项 mkdir build && cd build ../configure --prefix=/usr/local/gcc14 --enable-languages=c,c++ --disable-multilib # 4. 编译安装(使用多核加速) make -j$(nproc) && sudo make install # 5. 配置环境变量 echo 'export PATH=/usr/local/gcc14/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/gcc14/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc ``` #### ⚠️ 关键注意事项 1. **优先级管理**:使用`update-alternatives --config gcc`交互式切换版本 2. **依赖检查**:编译前安装`build-essential`/`Development Tools`基础包 3. **空间要求**:源码编译需15-20GB磁盘空间 4. **兼容性验证**:升级后用`ldd --version`检查glibc版本兼容
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值