码迷,mamicode.com
首页 > 其他好文 > 详细

运维:CentOS 6.5 源码编译 gcc 5.1.0

时间:2015-10-04 06:44:29      阅读:451      评论:0      收藏:0      [点我收藏+]

标签:

环境:阿里云最低配机器,512M内存,1核,CentOS6.5 32位


  准备工作:由于阿里云的CentOS默认是不开启swap的,所以需要先开启swap才行,因为gcc 5.1.0编译时非常吃内存,512M内存是万万打不住的,我在这个环节上折腾了两天,最后才找到了原因

 

 


  首先,创建用于交换分区的文件(2GB):dd if=/dev/zero of=/mnt/swap bs=1M count=2048


  其次,设置交换分区文件:mkswap /mnt/swap


  接着,立即启用交换分区文件:swapon /mnt/swap


  再者,如果在vi /etc/rc.local中有swapoff -a,需要修改为swapon -a,没有就加上


  设置开机时自启用swap分区:vi /etc/fstab,添加 /mnt/swap swap swap defaults 0 0


  最关键的一步:vi /etc/sysctl.conf,设置 vm.swappiness = 60 (阿里云这里默认是 0)


  最后,可以free -m,看看有没有swap显示

 

 


到这里我们就可以开始编译gcc-5.1.0了:


  首先下载源码:wget http://gcc.skazkaforyou.com/releases/gcc-5.1.0/gcc-5.1.0.tar.gz


  下载完成后解压源代码:tar xvfz gcc-5.1.0.tar.gz


  切换进目录:cd gcc-5.1.0


  下载依赖库:./contrib/download_prerequisites


  建立编译目录并切换进去:mkdir gcc-build-5.1.0;cd gcc-build-5.1.0


  配置编译命令:../configure –enable-checking=release –enable-languages=c,c++ –disable-multilib(–enable-languages表示你要让你的gcc支持那些语言,–disable-multilib不生成编译为其他平台可执行代码的交叉编译器。–disable-checking生成的编译器在编译过程中不做额外检查,也可以使用–enable-checking=xxx来增加一些检查;)


  编译:make (很久)


  安装:make install

运维:CentOS 6.5 源码编译 gcc 5.1.0

标签:

原文地址:http://www.cnblogs.com/cnmlgb/p/4854119.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!