centos默认gcc,centos升级gcc版本
大家好,感谢邀请,今天来为大家分享一下centos默认gcc的问题,以及和centos升级gcc版本的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
CentOS7 安装GCC 11
在 CentOS7中安装 GCC 11,首先需了解默认版本为4.8.5,执行相关命令会报错。为解决此问题,应先卸载旧版本。
操作步骤如下:
1.使用命令:sudo yum remove gcc及 sudo yum remove gdb卸载默认版本。
2.验证卸载情况,执行命令:gcc-v g++-v gdb,若无输出,则卸载成功。
3.安装 scl-utils和 centos-release-scl:
sudo yum install scl-utils
sudo yum install centos-release-scl
4.列出所有启用 centos-sclo-rh的包,查找与开发工具链相关的内容。
5.直接下载并安装开发工具链:sudo yum install-y devtoolset-11-toolchain
6.启用 devtoolset-11版本的工具链:sudo scl enable devtoolset-11 bash
7.查看安装的 GCC版本信息:gcc–v
至此,CentOS7中已成功安装并启用 GCC 11,提供了更高的开发效率。此教程仅为参考,具体操作请结合实际环境进行调整。
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一下。
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等其他内网环境软件的安装。最后,通过这样的方式,内网环境也能高效运作。