linux降级重新安装gcc

本文详细介绍了如何将Ubuntu系统中的GCC版本从4.6降级到4.2.2的过程,包括所需依赖库的安装与配置,以及解决编译过程中遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近拿了台新机子安装linux环境,安装了ubantu较高版本,谁知道gcc版本太高导致编译不通过,无奈之下只有降级gcc

 

当前的GCC版本为GCC-4.6,需要切换到GCC-4.2。首先,你需要去你的usr/bin/下去看看有没有gcc-4.5这样文件,如果没有的话,就安装一下吧: 我这里还必须要求是4.2.2囧

 稍微搜了一下,下载了gcc4.2.2版本,然后按照正常流程./configure  make.

在make的时候出现了cc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+

        从错误中可以看出:GCC编译需要GMP, MPFR, MPC这三个库,我使用的版本为gmp-4.3.2,mpfr-2.4.2和mpc-0.8.1。这三个包从下面的地址下载:
http://gmplib.org/,http://www.mpfr.org/,http://www.multiprecision.org/ 

理所当然,下载之后重新安装gmp,mpfr和mpc三个库


 

安装gmp和mpfr我是直接到解压后然后放到gcc的目录里面然后改名为gmp和mpfr即可,我下的这两个包得版本是 gmp-5.0.2.tar.bz2    mpfr-3.1.tar.bz2 

安装MPC
1)  tar zxvf mpc-0.8.1.tar.gz
2)  cd mpc-0.8.1
3)  ./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib
4)  make
5) ldconfig -v(出现:error while loading shared libraries: libmpfr.so.1: cannot open shared objec,可以自己去man ldd 和ldconfig) 
6) make check
7)  make install

之后就是慢慢等了。。。 

 

完了之后给gcc作个软连接

rm /usr/bin/gcc 

ln -s /usr/bin/gcc-4.2.2 /usr/bin/gcc 

转载于:https://www.cnblogs.com/juncent/archive/2012/02/06/2340476.html

### 如何在Linux系统上将GCC降级到指定版本 为了在Linux系统上安装特定版本的GCC,通常需要先卸载当前已有的GCC版本。对于基于Debian/Ubuntu系统的操作环境而言,在执行任何更改之前备份现有数据非常重要[^1]。 #### 卸载现有的GCC编译器 可以通过包管理工具来移除默认安装的GCC及其关联组件: ```bash sudo apt-get remove --purge gcc g++ cpp build-essential ``` #### 添加旧版软件源并更新APT缓存 如果目标版本较老,则可能不在官方仓库中提供。此时可以考虑添加第三方PPA(Personal Package Archive),或是直接下载对应.deb文件手动安装。例如要获取更早版本的GCC支持,可尝试如下命令向系统引入额外资源库: ```bash sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update ``` #### 安装所需的具体版本号 一旦准备就绪,就可以通过`apt-cache showpkg gcc`查看可用选项,并利用全名精确指明希望获得哪个发行版: ```bash sudo apt-get install gcc-<version> g++-<version> ``` 这里`<version>`应替换为实际期望设置的目标编号,比如gcc-7代表第七代产品线。 #### 设置默认使用的GCC版本 即使在同一台机器上有多个不同年代的实例共存,也可以借助update-alternatives机制轻松切换活动状态: ```bash sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-X Y sudo update-alternatives --config gcc ``` 其中X表示次要版本标记(如4.8),而Y则是优先级评分;后者决定了当用户未特别指定时,默认会选择哪一个解释程序处理C语言源码。 最后提醒一点,上述过程适用于大多数情况下的常规需求满足,但对于某些特殊应用场景来说或许并不完全适用,请务必提前做好充分调研工作再做决定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值