centos6.4 gcc降级至4.1.2过程

安装tfs,需要gcc-4.1.2版本的,我的centos6.4 是4.7版本它编译不了,很奇怪。下面是gcc-4.1.2的安装。

源码下载:ftp://ftp.gnu.org/gnu/gcc/gcc-4.1.2/

解包:tar -xjf gcc-4.1.2.tar.bz2

进入目录:cd gcc-4.1.2

# ./configure && 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.
make[3]: *** [fastjar.info] 错误 1
make[3]:正在离开目录 `/home/ssm/gcc-obj/fastjar‘
make[2]: *** [all] 错误 2
make[2]:正在离开目录 `/home/ssm/gcc-obj/fastjar‘
make[1]: *** [all-fastjar] 错误 2
make[1]:正在离开目录 `/home/ssm/gcc-obj‘
make: *** [all] 错误 2

(主要原因是GCC的版本过高)

出现此错误的原因也在于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.2版本。即把’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])’后保存,编译

接着又报错:

/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h:

参考:http://stackoverflow.com/questions/7412548/gnu-stubs-32-h-no-such-file-or-directory

On Ubuntu it‘s called libc6-dev-i386 - do sudo apt-get install libc6-dev-i386. See below for extra instructions for Ubuntu 12.04.

On Red Hat distros, the package name is glibc-devel.i686 (Thanks to David Gardner‘s comment)

On CentOS 5.8, the package name is glibc-devel.i386 (Thanks to JimKleck‘s comment)

On CentOS 6.3, the package name is glibc-devel.i686.

On SLES it‘s called glibc-devel-32bit - do zypper in glibc-devel-32bit

so,   yum install glibc-devel.i686

继续编译 make

然后 make install

最后, 重启 ,即可(当时以为失败了,结果第二天打开时,亮瞎了双眼,尼玛)

[[email protected] ~]$ gcc -v
使用内建 specs。
目标:x86_64-unknown-linux-gnu
配置为:./configure
线程模型:posix
gcc 版本 4.1.2

时间: 2024-10-14 03:23:56

centos6.4 gcc降级至4.1.2过程的相关文章

GCC降级

前阵子将Ubuntu升级到了12.04,原来装得virtualbox也可以正常使用.后来几次内核升级之后,virtualbox突然不能用了.virtualbox提示进行/etc/init.d/vboxdrv setup 进行此操作后,系统直接死机. 提示VBoxPciLinuxInit +0x10..... 看提示 应该是模块问题.但是网上还真的很少有这个问题. 大多是提示缺少内核头文件.内核头文件我都更新到了最新,到virtualbox官网下载了最新版本进行安装 仍然会直接挂掉. 按理说Ubu

Android系统开发(1)——GCC编译器的编译和安装过程

GCC编译器介绍 GCC编译器(GNG C Compiler)是GNU项目中符合ANSI C标准的编译系统,能够编译C  C++  Object C等语言编写的程序,同时GCC也是一个交叉编译器,特别使用于不同平台的嵌入式开发. GNU: GNU是"GNU is Not Unix"的递归缩写,1984年,史托曼开始GNU项目,这个项目的目的是创建一个自由,开放的Unix操作系统(Free UNIX),刚开始史托曼参考UNIX上面的软件,开发出功能类似的软件,在开发期间并没有看其他软件的

CentOS6.5 gcc升级到4.8.2

操作系统:Centos 6.5 64位 原GCC版本:4.4.7: 目标:升级GCC到4.8.2,以支持C++11. 1.获取GCC 4.8.2包: wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.2/gcc-4.8.2.tar.bz2 2.解压缩: tar -jvxf gcc-4.8.2.tar.bz2 3.下载.配置.安装依赖库,可以节约我们大量的时间和精力. 进入到目录gcc-4.8.2,运行: ./cont

【转】gcc降级到4.4,编译android,Ubuntu12.04

1. 查看gcc版本和g++版本 :/usr/bin$ ls -l gcc*lrwxrwxrwx 1 root root 7 Aug 30 19:26 gcc -> gcc-4.6-rwxr-xr-x 1 root root 353216 Apr 16 07:37 gcc-4.6 :/usr/bin$ ls -l g++*lrwxrwxrwx 1 root root 7 Mar 14 04:05 g++ -> g++-4.6-rwxr-xr-x 1 root root 357312 Apr 1

Centos-6.7下_Oracle 11gR2"静默"详细安装过程及排错

系统要求:内存:1G(官方最低要求1G)硬盘:40G(企业版安装所需4.29G和1.7G数据文件) 检查的命令内存# grep MemTotal /proc/meminfo交换空间# grep SwapTotal /proc/meminfo磁盘空间# df -ah 安装前系统准备:1.修改主机名# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=DB_2/g" /etc/sysconfig/network# hostname DB_2

相当精简的CentOS个人桌面版--从CentOS6.3 32b-mini版開始(mini版过程略)

利用网络实现相当精简的CentOS个人桌面版--从CentOS6.3 32位mini版開始(mini版过程略).升级后即是CENTOS6.5. 特别感谢163网易的镜像空间[http://mirrors.163.com].搜狐的镜像空间[http://mirrors.sohu.com]提供的CENTOS安装光盘镜像. 详细的32位MINI版安装过程因为不是太特别.网上也有不少安装步骤可看.这里就不写了,仅仅写安装好以后要做的,以下是步骤: yum install wget cd /etc/yum

gcc -o hello hello.c 执行过程

GCC编译器驱动程序读取源程序文件hello.c,并将它翻译成一个可执行目标文件hello.这个翻译的过程可分为四个阶段. 1.预处理阶段 预处理器(cpp)根据以字符#开头的命令,修改原始的c程序.比如hello.c中第1行的#include<stdio.h>命令告诉预处理器读取系统头文件stdio.h的内容,并将它直接插入到程序文本中.结果就得到了另一个C程序,通常是以 .i 作为文件扩展名. 2.编译阶段 编译阶段将文本文件hello.i 翻译成文本文件hello.s,它包含一个汇编语言

centos6.5编译android-2.2_froyo的几个问题jdk,gcc,arm-gcc

1.gcc降级 因为之前用QT升级了gcc到4.8.0,现在编译安卓又要降到4.4.6 我这边是直接下的gcc-4.4.6源码安装的 gcc源码安装包下载: ftp://ftp.mpi-sb.mpg.de/pub/gnu/mirror/gcc.gnu.org/pub/gcc/releases/ 下载好自己需要的安装包安装好,步骤就不说了哈! 也可以参考这个命令 yum install gcc gcc-c++ 2.java jdk1.5与1.7冲突 这个安卓要jdk-1_5_022-linux-i

centos6.5上安装淘宝tfs系统

为了安装淘宝tfs文件系统,查了很多资料.若仅参考淘宝的官方文档,那么安装注定失败,因为在官方文档中很多依赖库并没有明确标出. 为了更方便的安装,我这里只写正确的安装过程,错误的解决就不详细描述了. 第一步:gcc降级 centos6.5上如果用yum安装gcc的话,默认是4.4.7版本.若以在gcc4.4.7的基础上安装tfs的话会出现许多莫名其妙的错,最后在网上 甚至搜索不到相关的错误信息.不过我们公司已经有大神安装成功,到时候看他能不能分享一下经验. yum install -y texi