Ubuntu 12.04 64bit 安装编译GCC 4.1.2 绝对原创
1. 下载并解压源代码:
wget http://mirrors.ustc.edu.cn/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2
tar jxvf gcc-4.1.2.tar.bz2
2. 安装依赖库及软件:
sudo apt-get install libc6-dev libgmp-dev libmpfr-dev texinfo (这一步能够省去)
3. 编译gcc:
cd gcc-4.1.2
mkdir build
cd build
../configure --prefix=/opt/gcc-4.1.2 --program-suffix=-4.1 --libexecdir=/opt/gcc-4.1.2/lib --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --enable-languages=c,c++
make bootstrap
然后是漫长的等待。。
。
4. 安装gcc:
make install
cd /opt/gcc-4.1.2/bin
ls -al
看到i686-pc-linux-gnu-gcc-4.1.2等文件就说明安装完毕啦。
5. 切换gcc 4.1.2:
我一般喜欢在主目录下建立一个bin目录,而bin目录默认就在PATH中。然后在bin目录下链接gcc-4.1来切换gcc的不同版本号。
cd ~
mkdir bin
ln -s /opt/gcc-4.1.2/bin/gcc-4.1 gcc
ln -s /opt/gcc-4.1.2/bin/g++-4.1 g++
ln -s /opt/gcc-4.1.2/bin/cpp-4.1 cpp
ln -s /opt/gcc-4.1.2/bin/gcov-4.1 gcov
ln -s gcc cc
ln -s g++ c++
如今又一次登录,输入gcc -v 或 cc -v就能够显示gcc已经变成4.1.2版本号啦。
注意编译时遇到的问题小结:
(1)makeinfo的问题
# ./configure
接着就出现错误
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的版本号过高)
1:全英文的这部分说的是你的系统中缺少对应版本号的makeinfo软件。
由于gcc4.1以上的版本号须要makeinfo的版本号为4.2或更高。
所以输入命令行:
makeinfo –version 想查看makeinfo的版本号。结果得到了下面信息:
The program ‘makeinfo’ is currently not installed. You can install it by typing:
yum install texinfo
依照提示输入命令。问题得到解决。
2:本机使用的Texinfo是4.11版本号。
出现此错误的原因也在于configure文件中texinfo对该版本号不支持。能够在解压gcc4.1.1目录中的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.11版本号。即把’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])’后保存。编译通过。
(2)/usr/bin/ld: cannot find crti.o: No such file or directory
假设出现该
/usr/bin/ld: cannot find crti.o: No such file or directory
提示错误。说明是64位机子造成的。
解决64位的:
sudo ln -s /usr/lib/x86_64-linux-gnu /usr/lib64
版权声明:本文博主原创文章,博客,未经同意不得转载。
Ubuntu 12.04 64bit 安装编译GCC 4.1.2 绝对原创相关推荐
- 在Ubuntu 14.04 64bit上编译安装Crtmpserver trunk svn 811版本!
这里仅在 在Ubuntu 12.04 64bit上搭建Crtmpserver视频点播服务 基础上补充一下在Ubuntu 14.04上编译安装Crtmpserver的方法,以作备忘.因为Ubuntu 1 ...
- 在Ubuntu 12.04 64bit上配置,安装和运行go程序
注意: 下面的安装配置均遵从官网或是教材<Go语言程序设计>中的部分内容. 顺便说下,这是一本很难得的Go语言的入门教程,非常基础和全面.起初我因为这本书的封面比较讨厌它,闲置几年之后,一 ...
- 在Ubuntu 12.04 64bit上搭建Crtmpserver视频直播服务
本篇博客继续在上篇<在Ubuntu 12.04 64bit上搭建Crtmpserver视频点播服务> http://blog.csdn.net/tao_627/article/detail ...
- Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器
Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器 2013-12-25 1.从官网下载源码包 cd ~/progrom_devel ...
- Ubuntu 12.04下安装Oracle Express 11gR2
Ubuntu 12.04下安装Oracle Express 11gR2 [我的笔记] 参考1:http://www.linuxidc.com/Linux/2012-09/71382.htm 参考2:h ...
- ubuntu 12.04 eclipse 安装
方法二:(优点是安装内容清爽,缺点是配置麻烦) 1.安装JDK,参考 Ubuntu 12.04 下安装 JDK 7 2.下载 Eclipse 从 http://www.eclipse.org/dow ...
- Ubuntu 12.04 用户安装Chromium
http://www.linuxidc.com/Linux/2012-07/64911.htm Chromium 浏览器是谷歌浏览器的开源版本,可以说谷歌浏览器就是基于 Chromium .该浏览器已 ...
- Ubuntu 12.04下安装极点五笔输入法
Ubuntu 12.04下安装极点五笔输入法 刚刚安装好了 Ubuntu 12.04,但是没有五笔的日子实在不好过,WINDOWS下用习惯了极点五笔,本以为极点的作者不出Linux版的,结果在 ...
- 在Ubuntu 14.04 64bit上编译安装xbt tracker
下文参照如下链接,只是记录了我的所有实际安装过程,仅供各位参考. http://blog.csdn.net/liwf616/article/details/9245901 xbt项目主页 https: ...
最新文章
- 摄像头与毫米波雷达(Radar)融合
- Windows系统安装Oracle 11g客户端
- java 创建 HMAC 签名
- R语言使用WVPlots包可视化收入与年龄的Hexbin图并叠加平滑曲线实战
- WPF入门:数据绑定
- JS数组方法汇总 array数组元素的添加和删除
- 5GS 协议栈 — PFCP 协议 — URR 用量上报规则
- 【Redis】6.Redis key通用指令以及数据库的通用操作
- (王道408考研数据结构)第五章树-第四节2:平衡二叉树(AVL)及其旋转
- 太赞了!刷题PDF终于在GitHub上开源了!覆盖字节、蚂蚁、腾讯等多家大厂真题...
- c语言程序女设计教学效果分析,C语言程序设计的教学论文
- 移动一个网站集所使用的内容数据库
- python 批量重命名文件_Python批量重命名文件的方法
- NGINX(二)内存池
- Java Runtime 详解
- 电网调度计算机系统目前有三种,电力系统知识问答(三)
- Socket+华为云 实现广域网五子棋在线对战
- 提高团队协作效率就靠它们了!
- RegShot(注册表比较工具)v2.0.1.68绿色中文版
- 什么是“大数据新闻”? 大数据