|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!尽人皆知:CentOS固然好用,可是它本人的yum源很小也对照滞后,装置工具常常必要本人下载源码编译。(貌似RedHat和Fedora的源中el版本分歧的rpm也能够用,可是没有试过)
其他工具慢一点也就算了,最使人不克不及认的就是它的gcc版本竟然也这么滞后,到如今(2012-12-21)最新的CentOS版本是6.3,官方源上最新的gcc版本是4.4.6!而如今gcc的最新不乱版本是4.7.2,开辟版已到了4.8!
懂得c++的伴侣都晓得,这段版本晋级的工夫恰是各类编译器们想c++11尺度飞速接近的时代,也是愈来愈多的人来时利用c++11特征的时代,因而晋级一个功效更完美的gcc其实不可。
好了,主要性谈完了,上面入手下手谈闲事。
楼主的情况是CentOS6.3版,利用默许的gcc4.4.6,编译装置gcc4.8.0。
网上关于晋级编译gcc的教程中步调良多也很烦琐,凄惨的历程我就不说了,我只说一点,实在事变能够很复杂。
起首是依附的库,官方文档说必要gmp、mpc、mpfr,而且供应了下载地点,良多教程都说了本人编译装置,和这一过程当中的一些成绩,实在完整不用这么贫苦。岂非人人就没有想过gcc作为一个开展多年且很成熟的项目,岂非就没有供应一些主动化的办理计划吗?
步调1:
yuminstallglibc-staticlibstdc++-static-y
装置c和c++的静态库(听说假如体系中短少libc.a和libstdc++.a编译时会堕落,可是我没有那末多闲情逸致往试,理论过的伴侣能够复兴一下,分享一下履历,让人人都长长见地)
步调2:
下载解压gcc,我的gcc目次是gcc-4.8.0
步调3:
进进gcc目次,实行:
./contrib/download_prerequisites
这个奇妙的剧本文件会帮我们下载、设置、装置那三个依附的库。能够勤俭我们大批的工夫和精神。
步调4:
你觉得这三个库主动下载了、主动makeinstall了就没事了吗?错!
良多人在编译gcc的时分呈现各类奇奇异怪的毛病就是这步没有做好。
它们还不在.so文件的搜刮路径内里,必要加出来,最初牢记牢记必定要实行一下ldconfig。
大抵做法为:
1,找到你的同享库文件被install到哪一个目次了(updatedb+locate下令)。
2,假如你的库不是间接放在/lib或/usr/lib下,必要修正/etc/ld.so.conf文件,到场你的同享库的路径
3,假如在2中增加了同享库路径,牢记要实行一下ldconfig,更新呼应cache文件让体系能找到你的同享库。
详细做法列入我的上一博文“Linux同享库路径设置”http://blog.csdn.net/yanxiangtianji/article/details/8316562
步调5:
创建一时目次,这个目次用以寄存编译时的大批一时文件,是文档请求中必需的。
我是在gcc-4.8.0下创建了一个名为gcc-build-4.8.0的目次,进进它。
mkdirgcc-build-4.8.0
cdgcc-build-4.8.0
设置gcc编译选项
激烈倡议浏览INSTALL目次下的申明文档,特别是configure.html,以断定你的编译选项。
对照基础的选项有--enable-languages,申明你要让你的gcc撑持那些言语,--disable-multilib不天生编译为其他平台可实行代码的交织编译器。--disable-checking天生的编译器在编译过程当中不做分外反省,也能够利用--enable-checking=***来增添一些反省。
网上还说了甚么--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
makeinstall
编译历程CPU核基础100%占用,全部编译用时11分50秒。
反省gcc版本
#你就等吧少年,倡议早晨睡觉前做
固然下面三步必定要在前一步顺遂停止的情形下举行,假如哪一步堕落了,了局都显现error了,就不要再做前面的了。在shell的输入里搜刮"error"看详细的堕落点是甚么,百度、谷歌一下为何。
假如你求稳的话,能够在makeinstall之前先makecheck一下。
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|