现在的位置: 首页 > 综合 > 正文

[Red Hat Enterprise Linux5] RHL5安装gcc的一种方法

2013年08月01日 ⁄ 综合 ⁄ 共 2793字 ⁄ 字号 评论关闭

本文针对Linux初始化者,高手可掠过,以免贻笑大方。

常识:

1. RHL5默认是不装gcc的,需要自己装

2. Gcc安装包就在安装CD的Server目录下或者ISO的Server下

3. 直接Rpm装会提示nokey而且给出n多个依赖包,nokey是无所谓的,但是依赖包不装就不行。

 

start:

     要解决依赖包问题,原始手段:a.装系统时选择上,系统会自动计算依赖并安装相关依赖包;b.一个一个装上之后,再装gcc. 现代手段:rhl5提供了一个工具yum,可自动帮你计算依赖包,并全部自动安装.
问题集中到如何配置yum:yum本身是在系统默认安装时就安装上了,但是如果你直接yum install gcc*.还是会提示错误,按一篇文章提示:需要配置:/etc/yum.repos.d/rhel-debuginfo.repo.

gedit打开其后,需要注意三项

baseurl=file:///media/Server/ 

enabled=1
gpgcheck=0.

其中baseurl需要根据你的光盘位置或者ISO挂载位置来修改,这里我遇到一个问题,我用的是vm虚拟机,我直接把ISO挂上光驱后,光盘的名字是【RHL5_2 DVD】,其中间包含空格,无论我是在baseurl中用空格还是用【/ ]都不行,其中【/ 】在shell下是可以cd的。现在也不懂,网上也没查到方法,大概太弱智了没人关注。后来看到一篇文章来自:

http://blog.sina.com.cn/jarwang
下的一篇文章:RHEL5安装及配置光盘YUM。这里对其步骤进行部分修正并解释:(感谢作者先)






1、复制rhl5.iso至某一个你能访问的目录中【因为我用的是虚拟机,设置了一个windows与linux共享的文件夹(通过vmtool做的),位置在/mnt/hgfs/linuxShare/下,其中liunxshare是自己定义的文件夹名,我的rhl5.iso就放到这个目录下了。

2、挂载至/media目录

mount -o loop rhl5.iso /media 【需要注意的是,如果直接挂载到media下,那么将直接把光盘内容在media下显示,而没有创建一个光盘总目录,这是Server文件夹就直接在/media下】

3、修改yum文件

gedit /etc/yum.repos.d/rhel-local.repo

内容如下:【我还不明白为什么要这么多东东】

[Cluster]
name=Red Hat Enterprise Linux $releasever - $basearch - Cluster
baseurl=file:///media/Cluster

 【这个Cluster文件夹就是原来光盘根目录下的文件夹,以下类似】
enabled=1
gpgcheck=0 【这里不检查key,故设置为0】
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[ClusterStorage]
name=Red Hat Enterprise Linux $releasever - $basearch - ClusterStorage
baseurl=file:///media/ClusterStorage
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[Server]
name=Red Hat Enterprise Linux $releasever - $basearch - Server
baseurl=file:///media/Server
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[VT]
name=Red Hat Enterprise Linux $releasever - $basearch - VT
baseurl=file:///media/VT
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

4、新建 rhel/目录

mkdir -p /var/rhel/{Cluster,ClusterStorage,Server,VT}

5、安装createrepo
rpm -vih /media/Server/createrepo-0.4.4-2.fc6.noarch.rpm

【我的rhl5.2中不是这个createrepo-0.4.4-2.fc6.noarch.rpm ,名字和这个有一些差异,每个人可以查下自己Server下的安装包,对名称进行部分修改】
然后分别执行:
createrepo -o /var/rhel/Cluster -g /media/Cluster/repodata/comps-rhel5-cluster.xml /media/Cluster
createrepo -o /var/rhel/ClusterStorage -g /media/ClusterStorage/repodata/comps-rhel5-cluster-st.xml /media/ClusterStorage
createrepo -o /var/rhel/Server -g /media/Server/repodata/comps-rhel5-server-core.xml /media/Server
createrepo -o /var/rhel/VT -g /media/VT/repodata/comps-rhel5-vt.xml /media/VT

6、挂载

mount --bind /var/rhel/Cluster/repodata /media/Cluster/repodata
mount --bind /var/rhel/ClusterStorage/repodata /media/ClusterStorage/repodata
mount --bind /var/rhel/Server/repodata /media/Server/repodata
mount --bind /var/rhel/VT/repodata /media/VT/repodata

 

【以上就是这位作者给出的方案,很遗憾,我还没完全明白这个过程的目的以及其必要性】但值得肯定的是,如果上述你都正确完成了,这是,你把shell cd到Server目录下,执行:

yum install gcc*。就可以全部安装gcc相关而不需要一个一个来了,关键是这并不是只是用来安装gcc,安装any都可以用这种方法了,麻烦一次,幸福无数。】

1. yum install gcc*直接安装,解决依赖问题。

2.安装完成,查看gcc版本:


 

 

 

 

 

 

 

抱歉!评论已关闭.