gcc 文件的编译过程

https://blog.csdn.net/czg13548930186/article/details/78331692

 http://c.biancheng.net/gcc/

https://www.cnblogs.com/king-lps/p/7757919.html

 

 

 

 如果想把C语言变量的名称作为汇编语言语句中的注释,可以加上-fverbose-asm选项:

$ gcc -S -fverbose-asm circle.c

 

使用-C选项会很有帮助,这个选项可以阻止预处理器删除源文件和头文件中的注释:

$ gcc -E -C circle.c -o circle.c

 

 编译器支持许多和C语言程序相关的扩展名,对它们的说明如下:

 

扩展名(后缀)说明
.c C程序源代码,在编译之前要先进行预处理。
.i C程序预处理输出,可以被编译。
.h C程序头文件。(为了节省时间,许多源文件会包含相同的头文件,GCC 允许事先编译好头文件,称为“预编译头文件”,它合适情况下自动被用于编译。)
.s 汇编语言
.S 有C命令的汇编语言,在汇编之前必须先进行预处理。

 

对于include目录而言,通常的搜索顺序是:

  1. 包含指定源文件的目录(对于在 #include 命令中以引号包括的文件名)。
  2. 采用-iquote选项指定的目录,依照出现在命令行中的顺序进行搜索。只对 #include 命令中采用引号的头文件名进行搜索。
  3. 采用-I选型指定的目录,依照出现在命令行中的顺序进行搜索。
  4. 采用环境变量 CPATH 指定的目录。
  5. 采用-isystem选项指定的目录,依照出现在命令行中的顺序进行搜索。
  6. 采用环境变量 C_INCLUDE_PATH 指定的目录。
  7. 系统默认的 include 目录。
posted @ 2020-02-08 22:02  wdliming  阅读(374)  评论(0编辑  收藏  举报