GCC使用心得

全文参考博客文章:http://blog.csdn.net/sonicling/article/details/6702031

  GCC是GNU Compiler Collection的简称,作为Linux下最重要的一个编译器,其使用所有人都很熟悉。这里主要对GCC的运作机制进行一些简短的总结。

  这里使用的是老版本的GCC源代码,所以所有的实现都是基于C语言进行的,在后边的GCC版本(支持C++11)中,使用C++重写了很多代码,不在这里分析。

  从我们使用的角度说,GCC是一个编译器和链接器的集合,GCC是一个编译驱动器,驱动cc1,as和ld三个部件来完成编译、链接和汇编的工作。cc1将C语言源代码便以为汇编文件.s,而将汇编代码转换为二进制指令的工作由AS完成,生成大家都很熟悉的对象文件.o。生成的这些对象文件再由AR程序打包成静态库.a(这一步不一定有,又很多时候,我们并不需要将程序打包成静态库)。而LD是所谓的链接器。AS,AR,LD是属于另外一个Linux的程序包,叫做binutils的程序包的程序。

  要使用某个版本的gcc编译器,首先需要安装binutils组件,如果系统的binutils没有安装的话,需要首先安装。其次,需要检查自己所需要的gcc版本的依赖库。gcc主要依赖gmp、mpfr、mpc这三个库,如果你的系统没有这三个库,或者库太老,不足以支持新的gcc版本,那么,你需要首先安装这三个库。

  一般来说,下载GCC是从GNU的FTP镜像网站去下载,gcc的代码包一般放置在/release/gcc-x.y目录下,而那三个依赖库一般放置在/infrastructure/目录下。

  gcc的安装过程与其他软件没有太多区别,一般来说需要注意的是gcc的configure选项,这里的configure最好配置一下,不然编译时间会特别长。

configure --prefix=/usr/local/gcc-4.5.2 --enable-languages=c,c++

然后建立一个到 /usr/local/bin/gcc的软链接就可以。

转载于:https://www.cnblogs.com/jourluohua/articles/6500801.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值