首先看自己是否安装gcc
安装好gcc后才能用
GCC 编译器在编译一个C语言程序时需要经过以下 4 步:
- 将C语言源程序预处理,生成.i文件。
- 预处理后的.i文件编译成为汇编语言,生成.s文件。
- 将汇编语言文件经过汇编,生成目标文件.o文件。
- 将各个模块的.o文件链接起来生成一个可执行程序文件。
常见的编译命令
1.无选项
用法:#gcc test.c
作用:将test.c预处理、汇编、编译并链接形成可执行文件。
这里未指定输出文件,默认输出为a.out。
2. 选项 -o
用法:#gcc test.c -o test
作用:将test.c预处理、汇编、编译并链接形成可执行文件test。
-o选项用来指定输出文件的文件名。
3. 选项 –E 预处理指定的源文件,不进行编译。
将C语言源文件进行预处理,但是并不编译该程序。对于一般的预处理问题,可以使用这个选项进行查看,例如,宏的展开问题、文件的包含问题等。
用法:#gcc -E test.c -o test.i
作用:将test.c预处理输出test.i文件。
4. 选项 –S 将C语言源文件编译为汇编语言,但是并不汇编该程序。
用法:#gcc -S test.i
作用:将预处理输出文件test.i汇编成test.s文件。
5. 选项 –c 编译、汇编指定的源文件,但是不进行链接
用法:#gcc -c test.s
作用:将汇编输出文件test.s编译输出test.o文件。
6. 选项 -o
用法:#gcc test.o -o test
作用:将编译输出文件test.o链接成最终可执行文件test。
7. 选项-O
用法:#gcc -O1 test.c -o test
作用:使用编译优化级别1编译程序。级别为1~3,级别越大优化效果越好,但编译时间越长。
8. 选项-I directory
用法:指定 include 包含文件的搜索目录
9 选项-g 生成调试信息,该程序可以被调试器调试
10. 选项 –L directory 指定库文件目录
多源文件的编译方法
如果有多个源文件,基本上有两种编译方法:
1. 多个文件一起编译
用法:#gcc test1.c test.c -o test
作用:将test1.c和test.c分别编译后链接成test可执行文件。
2. 分别编译各个源文件,之后对编译后输出的目标文件链接。
用法:
#gcc -c test1.c //将test1.c编译成test1.o
#gcc -c test.c //将test.c编译成test.o
#gcc -o test1.o test.o -o test //将test1.o和test.o链接成test
以上两种方法相比较,第一中方法编译时需要所有文件重新编译,而第二种方法可以只重新编译修改的文件,未修改的文件不用重新编译。
其他见 :https://blog.csdn.net/songhui1024/article/details/85243246
ink
关于调用库文件