Centos 降低Gcc版本

简介:

GCC源版本:4.4.6

GCC目标版本:4.1.2

操作系统:CentOS release 6.5 (Final)

          Kernel \r on an \m

tar -zxvf gcc-4.1.2.tar.bz2

cd gcc-4.1.2

./configure --prefix=/Disk/gcc

make

报错:

WARNING: `makeinfo' is missing on your system.  You should only need it if

         you modified a `.texi' or `.texinfo' file, or any other file

         indirectly affecting the aspect of the manual.  The spurious

         call might also be the consequence of using a buggy `make' (AIX,

         DU, IRIX).  You might want to install the `Texinfo' package or

         the `GNU make' package.  Grab either from any GNU archive site.

解决办法:

  a.网上都说是修改源码支持4.1.2版本

configure文件中texinfo对该版本不支持,可以在解压gcc4.1.2文件夹中的configure文件里找到以下语句

# For an installed makeinfo, we require it to be from texinfo 4.2 or

# higher, else we use the "missing" dummy.

if ${MAKEINFO} --version \

| egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then

:

else

MAKEINFO="$MISSING makeinfo"

fi

;;

其中4\.[2-9]|[5-9]表示的是支持4.2-4.9之间的几个版本,所以需要自己添加4\.[1-9][0-9]*,以支持4.1版本。

即把'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])'编辑成'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|4\.[1-9][0-9]*|[5-9])'后保存,编译通过。

-->但尝试之后失败<--

  b.yum -y install texinfo

yum -y install ncurses

  c.继续报错

/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: 没有那个文件或目录

make[4]: *** [32/crtbegin.o] 错误 1

make[4]: Leaving directory `/Disk/gcc_source/gcc-4.1.2/host-x86_64-unknown-linux-gnu/gcc'

make[3]: *** [extra32] 错误 2

make[3]: Leaving directory `/Disk/gcc_source/gcc-4.1.2/host-x86_64-unknown-linux-gnu/gcc'

make[2]: *** [stmp-multilib] 错误 2

make[2]: Leaving directory `/Disk/gcc_source/gcc-4.1.2/host-x86_64-unknown-linux-gnu/gcc'

make[1]: *** [all-gcc] 错误 2

make[1]: Leaving directory `/Disk/gcc_source/gcc-4.1.2'

make: *** [all] 错误 2

   解决办法:

    yum -y install glibc-devel.i686

make install

yum remove gcc 卸载yum安装的高版本gcc

ln -s /usr/local/bin/gcc /usr/bin/gcc

[root@GHCLC6X-4354 bin]# gcc -v

Using built-in specs.

Target: x86_64-unknown-linux-gnu

Configured with: ./configure --prefix=/Disk/gcc

Thread model: posix

gcc version 4.1.2

gcc 降级成功










本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1579537,如需转载请自行联系原作者
目录
相关文章
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
Linux 编译器 开发工具
提升CentOS 7中的gcc/G++版本
至此,你已经成功在CentOS 7中升级了gcc/G++版本。从现在开始,在终端中运行 `gcc`或 `g++`时,将会使用新版本的编译器。
1889 21
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
990 64
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
1121 63
|
运维 监控 安全
CentOS 7系统 OpenSSH和OpenSSL版本升级指南
本文详细介绍如何在CentOS 7系统上升级OpenSSH和OpenSSL至最新稳定版本(OpenSSH 9.6p1和OpenSSL 1.1.1w),解决多个已知安全漏洞(如CVE-2023-51767等)。涵盖环境说明、现存漏洞、升级准备、具体步骤及故障排查,确保服务器安全。建议先在测试环境验证,再应用于生产环境。
5861 7
|
Linux C语言
成功解决 在Linux CentOS 7 中安装gcc
这篇文章介绍了如何在Linux CentOS 7系统中安装gcc (g++) 8工具集。由于CentOS 7默认的gcc版本是4.8,而这个版本与Qt 5.14、Qt 5.15或更高版本不兼容,可能会导致编译时出现系统头文件错误。文章中提到,即使在项目配置中添加了`CONFIG+=c++11`,如果仍然报错,那么很可能是gcc版本的问题。为了解决这个问题,文章提供了使用CentOS的Software Collections (scl)来安装更新版本的gcc的步骤。
成功解决 在Linux CentOS 7 中安装gcc
|
Kubernetes Linux 开发工具
centos7通过kubeadm安装k8s 1.27.1版本
centos7通过kubeadm安装k8s 1.27.1版本
|
安全 Linux 编译器
Centos 7.9如何使用源码编译安装curl最新版本
通过上述步骤,您就能在CentOS 7.9上成功地从源代码编译并安装curl的最新版本。这种方法不仅提供了灵活性,允许您定制编译选项,还确保了软件的最新功能和安全更新得到应用。
1259 2
|
消息中间件 Linux 数据库
OpenStack Centos7 T版本搭建
OpenStack Centos7 T版本搭建
1527 15
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
648 2