设为首页 收藏本站
查看: 840|回复: 0

[经验分享] 在redhat server 6 安装gcc

[复制链接]

尚未签到

发表于 2018-5-12 08:53:50 | 显示全部楼层 |阅读模式
http://blog.csdn.net/clodfront/article/details/7046122

在redhat server 6 安装gcc-4.5.2


安装gcc 有几个依赖项 gmp mpgr mpc  ppl我现在装的是(gmp-4.3.2.tar.bz2  mpfr-2.4.2.tar.bz2 mpc-0.8.1.tar.gz  )
这三个也有以来关系 得先安装gmp 其次mpfr 再是 mpc 然后是ppl
gmp mpfr  可以到http://mirror.bjtu.edu.cn/gnu/ 下载
mpc   
http://www.multiprecision.org/



先解压三个压缩包
#tar –jxvf  * .bz2
#tar –zxvf  *.gz
得到三个文件夹
gmp-4.3.2   mpfr-2.4.2  mpc-0.8.1

安装gmp
创建工作目录 然后进去
#mkdir gmp-build
#cd gmp-build
gmp的配置很简单
#../gmp-4.3.2/configure --prefix=/usr/gmp-4.3.2  --enable-cxx     (我将gmp安装在/usr/gmp-5.0.2  其他类似)
#make      …………………………编译
#make check …………………………检查  (不是必须的  不过走一下过场也好)
#make install …………………………安装
到这以后要修改修改环境变量  (我没有修改时 是失败了)
#vi /etc/profile
在/etc/profile 中添加一句
export LD_LIBRARY_PATH=/usr/gmp-4.3.2/lib:$LD_LIBRARY_PATH
#source /etc/profile      (这句好像可以不要 不清楚这是不是重新加载环境变量)
#cd ..  退出gmp工作目录

安装mpfr
创建工作目录 然后进去
#mkdir mpfr-build
#cd mpfr-build
mpfr的配置很简单
#../mpfr-2.4.2/configure --prefix=/usr/mpfr-2.4.2 --with-gmp=/usr/gmp-4.3.2     (mpfr 依赖gmp)
#make      …………………………编译
#make check …………………………检查  (不是必须的  不过走一下过场也好)
#make install …………………………安装
到这以后要修改修改环境变量
#vi /etc/profile
在/etc/profile 修改刚才添加的那句
export LD_LIBRARY_PATH=/usr/gmp-4.3.2/lib:/usr/mpfr-2.4.2/lib:$LD_LIBRARY_PATH
#source /etc/profile      (这句好像可以不要 不清楚这是不是重新加载环境变量)
#cd ..         退出mpfr的工作目录


安装 mpc
创建工作目录 然后进去
#mkdir mpc-build
#cd mpc-build
mpc的配置很简单
#../mpc-0.8.1/configure --prefix=/usr/mpc-0.8.1 --with-gmp=/usr/gmp-4.3.2 --with-mpfr=/usr/mpfr-2.4.2     (mpc 依赖gmp 和 mpfr)
#make      …………………………编译
#make check …………………………检查  (不是必须的  不过走一下过场也好)
#make install …………………………安装
到这以后要修改修改环境变量
#vi /etc/profile
在/etc/profile 修改刚才添加的那句
export LD_LIBRARY_PATH=/usr/gmp-4.3.2/lib:/usr/mpfr-2.4.2/lib:/usr/mpc-0.8.1/lib:$LD_LIBRARY_PATH
#source /etc/profile      (这句好像可以不要 不清楚这是不是重新加载环境变量)


到这里如果没问题的话就可以安装GCC  不过我的系统是出了问题  在安装的过程中报错了 提示找不到 zlib.h   以及 Z_OK  Z_NULL 等 没定义之类事
就得先安装zlib了    我在网上找了一个zlib-1.2.5.tar.gz
将他解压了就差不多了
#tar –zxvf zlib-1.2.5.tar.gz
得到了三个文件夹    include  lib   share   很郁闷啊 居然没安装或者配置需要的文件
没办法我 就直接将
  include里面的东西考到 /usr/include  里面
  lib里面的东西考到 /usr/lib  里面
share   里面的东西考到 /usr/ share   里面


其实一般的系统里面中都会有zlib的  不知为何我的没有


好了现在可以正式安装gcc了

我的gcc文件是gcc-4.5.2.tar.bz2  还和以前一样 过程差不多

#mkdir gcc-build
#cd gcc-build
# ../gcc-4.5.2/configure --prefix=/usr/gcc-4.5.2 --mandir=/usr/share/man --infodir=/usr/share/info --enable-bootstrap --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --enable-languages=c,c++ --with-gmp=/usr/gmp-4.3.2 --with-mpfr=/usr/mpfr-2.4.2 --with-mpc=/usr/mpc-0.8.1 --without-ppl --without-cloog

(以上即是gcc的简单配置了  我讲gcc安装在/usr/gcc-4.6.2  其详细说明可以查看gcc的相关书名文档)
#make &&make install     (这里编译和安装就一起搞了 因为是在太久了 我花了三四个小时   )

如果以上没问题的话 说明已经安装成功了  不过  还有接下来的配置 其实和上面的也差不多
#vi /etc/profile
在/etc/profile 修改刚才添加的那句
export LD_LIBRARY_PATH=/usr/gmp-5.0.2/lib: /usr/mpfr-2.4.2/lib:/usr/mpc-0.8.1/lib: /usr/gcc-4.6.2/lib:$ LD_LIBRARY_PATH
export LD_RUN_PATH=/usr/gcc-4.6.2/lib:$LD_RUN_PATH
export PATH=/usr/gcc-4.5.2/bin:$PATH
/////#source /etc/profile      (这句好像可以不要 不清楚这是不是重新加载环境变量)
如果需要的话就重启一下吧  不过我的也真的要重启 不重启的话 好多命令都用不了了  就连  #source /etc/profile  都用不了

报错
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: 没有那个文件或目录compilation terminated.make[5]: *** [_muldi3.o] 错误 1make[5]: Leaving directory `/home/QA/gcc-build/x86_64-unknown-linux-gnu/32/libgcc'make[4]: *** [multi-do] 错误 1make[4]: Leaving directory `/home/QA/gcc-build/x86_64-unknown-linux-gnu/libgcc'make[3]: *** [all-multi] 错误 2make[3]: Leaving directory `/home/QA/gcc-build/x86_64-unknown-linux-gnu/libgcc'make[2]: *** [all-stage1-target-libgcc] 错误 2make[2]: Leaving directory `/home/QA/gcc-build'make[1]: *** [stage1-bubble] 错误 2make[1]: Leaving directory `/home/QA/gcc-build'make: *** [all] 错误 2

rpm -qa |grep glibc-devel
[MPP@MPP-M ~]$ rpm -qa|grep glibc-devel
glibc-devel-2.12-1.80.el6.x86_64


{glibc-devel-2.12-1.80.el6.i686}


  安装glibc-devel-2.12-1.80.el6.i686.rpm
  错误排除后,安装gcc***成功后,gcc -v提示
[QA@QA-Test01 usr]$ gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/gcc-4.5.2/libexec/gcc/x86_64-unknown-linux-gnu/4.5.2/lto-wrapper
目标:x86_64-unknown-linux-gnu
配置为:../gcc-4.5.2/configure --prefix=/usr/gcc-4.5.2 --mandir=/usr/share/man --infodir=/usr/share/info --enable-bootstrap --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --enable-languages=c,c++ --with-gmp=/usr/gmp-5.0.2 --with-mpfr=/usr/mpfr-2.4.2 --with-mpc=/usr/mpc-0.8.1 --without-ppl --without-cloog
线程模型:posix
gcc 版本 4.5.2 (GCC)

  但是编译boost时候看到仍然用到的是以前的gcc版本
  这时候就要把以前的gcc给移除重新创建新的连接就可以了
  sudo mv /usr/bin/gcc /usr/bin/gcc_bak
  sudo ln -s /usr/bin/gcc /usr/gcc-4.5.2/bin/gcc
  ok了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-458950-1-1.html 上篇帖子: redhat 替换centos yum源 下篇帖子: RedHat认证介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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