CentOS 7 安装 compat-gcc-44-c++-4.4.7-8.el7.x86_64.rpm 详细步骤(含依赖解决)

6 阅读2分钟

 一、先看看有没有装过旧版本

装之前先查一下系统里有没有同名的包,有的话建议先卸掉,免得冲突:

rpm -qa | grep compat-gcc-44-c++

如果有输出,比如 compat-gcc-44-c++-xxx,就卸载:

sudo rpm -e compat-gcc-44-c++-xxx --nodeps

二、下载安装包

安装包下载:pan.quark.cn/s/f3d669f73…  ,去 CentOS 镜像站或者 RPM 仓库找这个包:compat-gcc-44-c++-4.4.7-8.el7.x86_64.rpm

比如阿里云镜像可以用 wget 直接下(链接仅供参考,实际以镜像为准):

wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/compat-gcc-44-c++-4.4.7-8.el7.x86_64.rpm

要是没装 wget,先装一下:

sudo yum install wget -y

三、装依赖(关键!)

compat-gcc-44-c++ 是兼容旧版本 C++ 编译器的包,依赖不少,缺一个都装不上。常见的依赖有这些:

  • compat-libstdc++-33
  • libstdc++-devel
  • gcc-c++
  • glibc-devel
  • libgcc
  • cpp
  • mpfr
  • libmpc
  • gmp-devel

直接用 yum 一次性装齐(省得一个个找):

sudo yum install compat-libstdc++-33 libstdc++-devel gcc-c++ glibc-devel libgcc cpp mpfr libmpc gmp-devel -y

四、开始安装

进入放 rpm 包的目录,执行安装命令:

sudo rpm -ivh compat-gcc-44-c++-4.4.7-8.el7.x86_64.rpm

-i是安装,-v看过程,-h显示进度条。

如果提示缺依赖,就按错误信息把缺的包装上,再重新执行上面的命令。

五、验证是否装好

装完输入下面的命令,看版本对不对:

g++44 --version

(注:compat-gcc-44-c++ 对应的编译器命令是 g++44,不是普通的 g++

如果输出里有 4.4.7,就说明安装成功了。

六、常见问题

  1. 提示“依赖检测失败” :别慌,仔细看缺哪个包,用 yum search 包名找到后装上,再重试安装命令。
  2. 想省事儿装依赖:用 yum 本地安装,它会自动帮你解决依赖(推荐新手用):
sudo yum localinstall compat-gcc-44-c++-4.4.7-8.el7.x86_64.rpm -y

这样就能在 CentOS 7 上装好 compat-gcc-44-c++ 4.4.7 了,适合需要编译老 C++ 项目的场景。