centos 安装gcc rpm(linux安装rpm包)
大家好,关于centos 安装gcc rpm很多朋友都还不太明白,今天小编就来为大家分享关于linux安装rpm包的知识,希望对各位有所帮助!
Redhat7安装yum(换成免费版),在线更新GCC,无视依赖困扰
在Linux系统基础课程中,使用虚拟机编译运行程序时,若需安装gcc,通常可通过一个命令实现,即“yum install gcc”。但若在输入后提示“yum源未注册,没有启动的源(仓库),无法安装”。面对这样的问题,直接离线安装gcc则更为麻烦。经过一番研究,我总结出将yum替换为免费版本的实践过程,以下为详细步骤。
首先,确保Linux虚拟机已安装并能连上网络。开启虚拟机,以root账号登录,打开终端。
第二步,卸载原有的yum(使用命令:`rpm-qa|grep yum|xargs rpm-e--nodeps`)并确认卸载完成(输入后若无信息显示则卸载成功)。
第三步,下载yum及其相关依赖文件。使用网易的镜像网站(`mirrors.163.com`),访问相应网页并下载包括`python-iniparse-0.4-9.el7.noarch.rpm`、`python-urlgrabber-3.10-9.el7.noarch.rpm`、`yum-3.4.3-161.el7.centos.noarch.rpm`、`yum-metadata-parser-1.1.4-10.el7.x86_64.rpm`、`yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm`在内的五个文件,将它们保存到桌面上。
第四步,安装下载的yum文件(使用命令:`rpm-ivh*.rpm`安装全部文件)。在安装过程中,若出现缺少4.11.3-22以上版本的rpm的错误,需回到下载yum包的页面,找到对应rpm文件进行升级安装(使用命令:`rpm-Uvh rpm-4.11.3-35.el7.x86_64.rpm--nodeps`),同理升级安装其他python文件。接着尝试安装yum相关文件(确保`yum-3.4.3-161.el7.centos.noarch.rpm`和`yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm`同时安装)。
第五步,新建配置.repo文件。输入`vim/etc/yum.repos.d/CentOS-Base.repo`进入Vi编辑模式,复制并粘贴配置文件内容(确保完整无误),使用:wq保存并退出。清理yum缓存(使用命令:`yum clean all`),此时可正常使用yum了。
第六步,安装gcc或其他所需工具(直接使用“yum install xxxx”即可)。在安装过程中,系统会提示是否继续,输入“y”并回车以继续安装,直至显示“完毕”。
至此,yum和gcc均成功安装完毕。最后,通过命令“gcc-v”进行测试,确认gcc已正确安装。
使用yum安装的优势在于能将所需工具及其依赖文件一并下载或更新,确保系统资源的有效利用。至此,Linux系统中通过虚拟机编译运行程序的环境已准备就绪。
CentOS离线安装gcc(循环依赖、冲突解决)
直接开始安装CentOS离线版本的gcc,面对可能遇到的循环依赖和冲突问题。
首先,确认gcc是否缺失,如果没有,可以通过命令行检查。接着,针对CentOS7的aarch64架构,从[pkgs.org](pkgs.org)下载gcc-4.8.5-44.el7.aarch64.rpm文件。将包上传至服务器,安装过程中可能会遇到依赖缺失,这时需要逐一下载并安装缺失的依赖。
安装过程中可能遇到循环依赖问题,解决方法是将所有需要安装的rpm文件一起执行rpm-ivh。如果遇到包冲突,可以选择卸载冲突包(但需谨慎操作),或者使用--replacefiles参数安装新版本,避免影响系统其他软件。
成功安装gcc后,通过gcc-v检查版本,确保安装完成。这个过程同样适用于net-tools、rsync等其他内网环境软件的安装。最后,通过这样的方式,内网环境也能高效运作。
centos7怎么编译安装gcc-c++
方法/步骤
1
yum install glibc-static libstdc++-static-y
安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)
2
下载解压gcc,我的gcc目录是gcc-4.8.0
3
进入gcc目录,执行:
./contrib/download_prerequisites
这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。
4
你以为这三个库自动下载了、自动make install了就没事了吗?错!
很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。
它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。
大致做法为:
1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。
2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径
3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。
5
建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。
我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc编译选项
6
强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。
比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。
网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。
调用gcc-4.8.0目录下的configure文件:
例如:
../configure--enable-checking=release--enable-languages=c,c++--disable-multilib
7
执行
../make#不解释
执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)
make-j16
make install编译过程CPU核基本100%占用,整个编译用时11分50秒。
检查gcc版本
#你就等吧少年,建议晚上睡觉前做
当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,baidu、google一下为什么。
如果你求稳的话,可以在make install之前先make check一下。