前言

由于需要在RHEL7上使用gcc的一些命令,于是查询了一下安装yum和gcc的一些博客
这个大佬写的很详细:
RHEL7关于yum安装和gcc安装
但是虽然照着教程一步步来但还是出现了许多问题,好在自己瞎摸索着最后终于装上了:
在这里插入图片描述
所以在这里记录一下这个过程中遇到的问题和解决方式

解析主机失败

在wget时我一直报这个提示,同样看到上述教程的评论区里也有人出现同样的问题。后来ping百度才发现…自己根本没联网。可能出现这个问题的原因有很多,但是可以先看看自己有没有最基本的错误,检查一下联网吧。

rpm -ivh yum-*后报错

在wget所有资源后也是显示了一个依赖检测失效的错误。其实解决方法原链接的博主已经写了,说缺什么找什么,直接去镜像源里找出来就行了,但是我发现处理起来好像并没有那么顺利。比如图中的
报错信息
第二条,rpm有版本要求。但是我在镜像源里下的是满足要求的新版本,当时有点懵圈。然后用rpm -qa|grep yum查看了版本,发现还是最开始的4.11.1-16。于是又找到了下面的解决办法:
Red Hat的yum替换为CentOS7的yum
里面就有版本问题。这时候我们需要手动升级(前提是已经下好了新版本)
执行rpm -Uvh rpm-4.11.3-35.el7.x86_64.rpm --nodeps即可。
注意!!这条升级的命令之后也会用到
然后就…还是有报错!!

yum update报错

这部分基本都是有错的,像原教程所述这个过程会出现一堆被需要然后你没有的东西,我就像教程那样执行:

yum update rpm-build
yum update rpm-libs
yum update rpm-python

但是!!还是在这每个子过程中出现这样那样的被需要,最开始我以为是我执行的顺序有问题,后面发现这几个都是相互需要的,不存在哪一个先update后另外两个就好了的情况。
报错信息:
报错信息
我惊讶!!搞了半天我升级结果又是需要旧版本是吧。
然后我就想办法版本回退,参照
yum回退linux,yum或rpm回退方法
但是我显示查不到相关文件,应该是之前更新的时候就把旧版本顺带清理了。
既然版本回退不了,就都给我升级!!
于是我就用前文说的升级命令,给rpm-libs和rpm-python都换成了和rpm匹配的版本,这下终于在这部分告一段落了,只剩下PackageKit。

PackageKit

这玩意确实讨人厌,用
rpm -aq | grep PackageKit|xargs rpm -e --nodeps
把它卸载后就要寻找一堆与之相关的镜像源。但是可能每个人遇到的情况不一样,反正还是那句话,缺啥下啥,在这提供一些搜罗的链接:(第二个是原教程就有的,但是在下载PackageKit相关镜像时还是有些没能找到,比如PackageKit-device-rebind-0.8.9-11.el7.x86_64.rpm,第一个链接里就有)
CentOS on the Web
CentOS镜像使用帮助

最后祝大家远离报错,天天开心!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐