概述
一、文件的编译
gcc 文件名
c文件类型
.h ——头文件
.h.——gch 头文件的编译结果,与头文件同时存在时,会被优先使用
.c ——源文件
.i ——预处理文件
.s ——汇编文件
.o ——目标文件
.so ——共享库
.a ——静态库
二、编译器
负责把人能看懂的用代码记录的文本文件,翻译成计算机能看懂的二进制文件
由预处理器、编译器、链接器
gcc是由gnu社区为了编译Linux内核代码而开发一款免费的编译器,默认采用c89编译语法
-std=gnu99 可以设置为C99语法
1、gcc code.c -> a.out(默认可执行文件名)
常用参数:
-E 显示出预处理结果
-S 生成汇编代码
-c 只编译不链接
-o 设置编译结果的名字
-std= 设置编译语法
-I(大写i) 路径 指定头文件的加载路径
-l 指定要使用的库文件 例: -lm
-Wall 更严格地检查代码,尽可能多地产生警告
-Werror 把警告当错误处理
2、 c代码源文件变成可执行文件的过程:
预处理:把源文件翻译成预处理文件
gcc -E code.c 把预处理结果打印到终端
gcc -E code.c -o code.i 生成以.i结尾的预处理文件
编译:把预处理文件翻译成汇编代码
gcc -S code.i 生成以.s 结尾的汇编文件
汇编:把汇编文件翻译成二进制的目标文件
gcc -c code.s 生成以.o 结尾的目标文件
链接:把若干个目标文件合并生成一个可执行文件
gcc a.o b.o …… 默认生成a.out 可执行文件
gcc a.o b.o …… -o newname 指定生成别名的可执行文件
最后
以上就是英俊百褶裙为你收集整理的Linux下文件的编译的全部内容,希望文章能够帮你解决Linux下文件的编译所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复