Chinaunix首页 | 论坛 | 博客
  • 博客访问: 444284
  • 博文数量: 72
  • 博客积分: 3186
  • 博客等级: 中校
  • 技术积分: 1039
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-07 16:53
文章分类

全部博文(72)

文章存档

2012年(1)

2011年(5)

2010年(10)

2009年(56)

我的朋友

分类: LINUX

2009-09-17 15:49:09


用“man gcc”即可看到下面这一段,主要是想了解一下gcc对于不同后缀名的文件的处理。
对于学习,我想深入细节是非常重要的,这也是一个人学习能力的最直接体现。近日逐渐发现自己这方面做得太差了,虽然也是一直在学习,但总是没有深入,放过了一些细节方面,觉得自己非常的“眼高手低”。这是学习中的大忌。
试着一点一点的去改善吧。平时多动手测试、多整理知识点,是培养“深入细节”的一个好方法。


--------------------------------------------------------------------------------

       Compilation can involve up to four stages: preprocessing, compilation proper, assembly and linking, always in that order.  GCC is capable of preprocessing and compiling several files either into several assembler input files, or into one assembler input file; then each assembler input file produces an object file, and linking combines all the object files (those newly compiled, and those specified as input) into an executable file.

    编译有4个步骤:预处理、编译、汇编、链接,通常都按照这个顺序执行。GCC能够将多个源文件预处理并汇编,最终生成多个汇编输入文件或生成单个汇编输入文件;然后每个汇编输入文件都生成一个目标文件,最终将所有的目标文件链接起来形成一个可执行文件。

对于一个输入文件,它的文件名后缀决定了其需要进行的编译过程。

       file.c
           C语言源文件,必须经进行处理

       file.i
           C语言源文件(或 C源文件经过预处理后的文件),不需要进行预处理

       file.ii
           C++源文件(或 经过预处理后的文件),不需要进行预处理

       file.m
           Objective-C源文件。必须与libobjc库链接才能使这个程序工作。

       file.mi
           Objective-C源文件,不需要进行预处理

       file.mm
       file.M
           Objective-C++源文件,必须与libobjc库链接才能使这个程序工作。

       file.mii
           Objective-C++源文件,不需要进行预处理

       file.h
           C, C++, Objective-C 或 Objective-C++的头文件,需进行预编译。

       file.cc
       file.cp
       file.cxx
       file.cpp
       file.CPP
       file.c++
       file.C
          C++源文件,必须进行预处理。

       file.mm
       file.M
           Objective-C++ source code which must be preprocessed.

       file.mii
           Objective-C++ source code which should not be preprocessed.

       file.hh
       file.H
       file.hp
       file.hxx
       file.hpp
       file.HPP
       file.h++
       file.tcc
           C++ header file to be turned into a precompiled header.


       file.s
           Assembler code.

       file.S
       file.sx
           汇编文件,必须经过预处理
阅读(1017) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~