1.查看系统版本:
本次安装,根据自己的系统版本安装GCC,于是查看系统版本:
cat /etc/redhat-release
uname -a
cat /proc/version
cat /etc/issue
cat /etc/centos-release
2.下载gcc rpm
CentOS6 RPM下载地址:
http://vault.centos.org/
CentOS7 RPM下载地址:
http://rpmfind.net/linux/centos/7.6.1810/os/x86_64/Packages/
由于我不知道安装GCC需要哪些依赖的rpm,所以就直接下个gcc的rpm,看提示需要哪些依赖关系包,然后再下载。
当然有点人肯定也想到参考别人版本的安装rpm,改下版本信息全部,照样下载就好了。
但我想自己解决需要的依赖关系,这样以后遇到同类问题可以有个思路。
3.安装gcc rpm
rpm -ivh gcc-4.8.5-36.el7_6.2.x86_64.rpm
提示要cpp-4.8.5-36.el7_6.2,libgcc-4.8.5-36.el7_6.2,libgomp-4.8.5-36.el7_6.2这3个依赖包,于是在以上链接里下载了相关的包。
在安装的时候,这些包也需要其他依赖包,也把相关包下载下来安装即可。
但我安装完这些依赖关系包后,再安装GCC的包,居然还是提示同样的问题。我以为是我漏了安装哪个依赖包了,于是重新检查了一遍。
rpm -ivh cpp-4.8.5-36.el7.x86_64.rpm
rpm -ivh libgcc-4.8.5-36.el7.x86_64.rpm
rpm -ivh libgomp-4.8.5-36.el7.x86_64.rpm
好吧,全部都安装好了,到底是哪里出了问题,不清楚,那么,只好忽略这些提示继续安装。于是用了force参数
rpm -ivh gcc-4.8.5-36.el7_6.2.x86_64.rpm --force
发现还是不行,再加个参数nodeps,成功了。
rpm -ivh gcc-4.8.5-36.el7_6.2.x86_64.rpm --force --nodeps
gcc -v
RPM命令参数:
--force short hand for --replacepkgs --replacefiles
--replacefiles ignore file conflicts between packages
--replacepkgs reinstall if the package is already present
--nodeps don't verify package dependencies