仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 720|回复: 8
打印 上一主题 下一主题

[CentOS(社区)] 来一发CentOS 晋级GCC教程

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:28:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!本文转载自:http://wgkgood.blog.51cto.com/,对作者深表感激!
比来因为需求的缘故原由,必要把今朝gcc-4.4.4晋级到gcc-4.6.1,思索到有多台的缘故原由,做了一个剧本主动装置分离批量工具分发。
1、装置情况
体系版本:centos6.0X64
原GCC版本:gcc-4.4.4
新GCC版本:gcc-4.6.1

2、正式装置
1、下载装置的源码:


[plain]viewplaincopyprint?





  • 以下必要下载以下包:
  • gcc-4.6.1.tar.bz2gmp-4.3.2.tar.bz2mpc-0.8.1.tar.gzmpfr-2.4.2.tar.bz2
  • 下载地点以下:
  • wgetftp://gcc.gnu.org/pub/gcc/infrastructure/{gmp-4.3.2.tar.bz2,mpc-0.8.1.tar.gz,mpfr-2.4.2.tar.bz2}
  • wgethttp://ftp.gnu.org/gnu/gcc/gcc-4.6.1/gcc-4.6.1.tar.bz2
  • 便可!


[/code]
2、解压装置:装置有前后按次:GMP、MPFR、MPC、GCC
1.装置GMP:

[plain]viewplaincopyprint?





  • tarjxfgmp-4.3.2.tar.bz2&&cdgmp-4.3.2/;./configure–prefix=/usr/local/gmp/&&make&&makeinstall


2.装置MPFR:

[plain]viewplaincopyprint?





  • tarjxfmpfr-2.4.2.tar.bz2;cdmpfr-2.4.2/;./configure–prefix=/usr/local/mpfr–with-gmp=/usr/local/gmp&&make&&makeinstall


3.装置MPC:

[plain]viewplaincopyprint?





  • tarxzfmpc-0.8.1.tar.gz;cdmpc-0.8.1;./configure–prefix=/usr/local/mpc–with-mpfr=/usr/local/mpfr–with-gmp=/usr/local/gmp&&make&&makeinstall


然后实行以下:

[plain]viewplaincopyprint?





  • exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib/</span>


//这一步很关头,设置变量,不设置前面会报错。
4.装置GCC:

[plain]viewplaincopyprint?





  • tarjxfgcc-4.6.1.tar.bz2;cdgcc-4.6.1;./configure&ndash;prefix=/usr/local/gcc&ndash;enable-threads=posix&ndash;disable-checking&ndash;disable-multilib&ndash;enable-languages=c,c++&ndash;with-gmp=/usr/local/gmp&ndash;with-mpfr=/usr/local/mpfr/&ndash;with-mpc=/usr/local/mpc/&&make&&makeinstall


[plain]viewplaincopyprint?





  • 装置终了便可!然后做一个链接就能够利用GCC了
  • mkdir-p/data/backup/`date+%Y%m%d`
  • mv/usr/bin/{gcc,g++}/data/backup/`date+%Y%m%d`

  • 新建软链接:
  • ln-s/usr/local/gcc/bin/gcc/usr/bin/gcc
  • ln-s/usr/local/gcc/bin/g++/usr/bin/g++


3、测试GCC
间接输出gcc-v能够检察到gcc版本为4.6.1和相干的编译参数就ok了!
附上一个最复杂的装置剧本:


[plain]viewplaincopyprint?





  • #!/bin/sh
  • ##automakeinstallgcc
  • ##2012-07-03
  • tarjxfgmp-4.3.2.tar.bz2&&cdgmp-4.3.2/;./configure&ndash;prefix=/usr/local/gmp/&&make&&makeinstall

  • sleep1
  • cd../;tarjxfmpfr-2.4.2.tar.bz2;cdmpfr-2.4.2/;./configure&ndash;prefix=/usr/local/mpfr&ndash;with-gmp=/usr/local/gmp&&make&&makeinstall

  • cd../;tarxzfmpc-0.8.1.tar.gz;cdmpc-0.8.1;./configure&ndash;prefix=/usr/local/mpc&ndash;with-mpfr=/usr/local/mpfr&ndash;with-gmp=/usr/local/gmp&&make&&makeinstall

  • cd../;tarjxfgcc-4.6.1.tar.bz2;cdgcc-4.6.1;./configure&ndash;prefix=/usr/local/gcc&ndash;enable-threads=posix&ndash;disable-checking&ndash;disable-multilib&ndash;enable-languages=c,c++&ndash;with-gmp=/usr/local/gmp&ndash;with-mpfr=/usr/local/mpfr/&ndash;with-mpc=/usr/local/mpc/

  • if
  • [$?-eq0];then
  • echo“Thisgccconfigureissuccess”
  • else
  • echo“Thisgccconfigureisfailed”
  • fi
  • exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib/

  • make&&makeinstall

  • [$?-eq0]&&echoThisismakeinstallsuccess


////--------------------------------------------------------------------------------------------------------------------------------------------------------------
configure:error:cannotcomputesuffixofobjectfiles:cannotcompile
Indeed,addingtheMPFRandGPMlibdirectoriestoLD_LIBRARY_PATHsolvestheproblem.ForsomereasonIthoughtconfigurewouldhandlethisformesinceIgaveit--with-gmpand--with-mpfrsettings.Wouldhavebeenniceifconfiguretestedforthisandgivenahelpfulerror.InanyeventIllclosethisoutasaninvalidbugreport.
必要装置gmp与mpfr而且必要在.bash_profile(一样平常在/root目次下)设置LD_LIBRARY_PATH,把GMP与MPFR对应的lib设置上如:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpfr/2.4.0/lib:/usr/local/gmp/4.2.2/lib
exportLD_LIBRARY_PATH必定要重启失效大概利用source/root/.bash_profile


errorwhileloadingsharedlibraries:libXXX.so.X:cannotopensharedobjectfile:Nosuchfile
1、找到libXXX.so.X的路径,好比/usr/local/***/lib
2、cd/etc
3、geditld.so.conf
4、增加/usr/local/***/lib
5、ldconfig
欢迎大家来到仓酷云论坛!
冷月葬花魂 该用户已被删除
沙发
发表于 2015-1-16 18:26:23 来自手机 | 只看该作者

来一发CentOS 晋级GCC教程

就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务
板凳
发表于 2015-1-25 17:41:30 | 只看该作者
永中office 2004增强版安装只需要默认安装即可使用并操作大多与win系统雷同,打印机的配置和管理,记录光盘等。
再见西城 该用户已被删除
地板
发表于 2015-2-3 12:51:45 | 只看该作者
下面笔者在论坛看到的一个好问题: “安装红旗4.0后,系统紫光输入法自带的双拼方案和我的习惯不一样,如何自定义双拼方案解决?谢谢?”这个问题很简练。
因胸联盟 该用户已被删除
5#
发表于 2015-2-9 04:11:03 | 只看该作者
学习Linux系统在服务中的配置方法及使用方法。Linux在服务器中应用相当广,应对常用的apache,samba,ftp等服务器基本配置清楚了解。[重点,应巩固学习]
愤怒的大鸟 该用户已被删除
6#
发表于 2015-2-26 23:40:01 | 只看该作者
Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。
柔情似水 该用户已被删除
7#
 楼主| 发表于 2015-3-8 19:44:29 | 只看该作者
和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。
小妖女 该用户已被删除
8#
发表于 2015-3-16 21:28:25 | 只看该作者
这种补充有助于他人在邮件列表/新闻组/论坛中搜索对你有过帮助的完整解决方案,这可能对他们也很有用。
只想知道 该用户已被删除
9#
发表于 2015-3-23 10:59:17 | 只看该作者
你需要提供精确有效的信息。Linux这并不是要求你简单的把成吨的出错代码或者数据完全转储摘录到你的提问中。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 18:32

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表