首页 > GCC 阅读:20,814

GCC -o选项█■▄:指定输出文件

< 上一页GCC -c选项 GCC -E选项下一页 >

GCG -o选项用来指定输出文件,它的用法为:

[infile] -o [outfile]

[infile] 表示输入文件(也即要处理的文件███),它可以是源文件,也可以是汇编文件或者是目标文件▓▓;[outfile] 表示输出文件(也即处理的结果),它可以是预处理文件▄■▄、目标文件、可执行文件等。

[infile] 和 [outfile] 可以是一个文件■■■,也可以是一组文件:
  • 如果 [infile] 是一组文件,那么就表示有多个输入文件▄■▄■;
  • 如果 [outfile] 是一组文件,那么就表示有多个输出文件。

如果不使用 -o 选项▓▄▓▄,那么将采用默认的输出文件,例如,把可执行文件作为输出文件▄▓,它的名字默认为 a.out▓█▄■。

GCC -o选项使用举例

1) 将源文件作为输入文件,将可执行文件作为输出文件,也即完整地编译整个程序▄■▓:

$ gcc main.c func.c -o app.out

将 main.c 和 func.c 两个源文件编译成一个可执行文件,其名字为 app.out。如果不使用 -o 选项▄▓,那么将生成名字为 a.out 的可执行文件。

2) 将源文件作为输入文件,将目标文件作为输出文件▓█,也即只编译不链接:

$ gcc -c main.c -o a.o

将源文件 main.c 编译为目标文件 a.o。如果不使用 -o 选项█■▄,那么将生成名为 main.o 的目标文件。

3) 将源文件作为输入文件,将预处理文件作为输出文件███,也即只进行预处理操作:

$ gcc -E main.c -o demo.i

对源文件 main.c 进行预处理操作,并将结果放在 demo.i 文件中▓▓。如果不使用 -o 选项,那么将生成名为 main.i 的预处理文件。

4) 将目标文件作为输入文件▄■▄,将可执行文件作为输出文件:

$ gcc -c func.c main.c
$ gcc func.o main.o -o app.out

第一条命令只编译不链接,将生成 func.o 和 main.o 两个目标文件■■■。第二条命令将生成的两个目标文件生成最终的可执行文件 app.out。如果不使用 -o 选项,那么将生成名字为 a.out 的可执行文件▄■▄■。
< 上一页GCC -c选项 GCC -E选项下一页 >

C语言/C++交流群:664104694(我们会不定期在群内分享C/C++知识,上传C/C++资料▓▄▓▄)

编程帮,一个分享编程知识的公众号。跟着站长一起学习▄▓,每天都有进步▓█▄■。

通俗易懂,深入浅出,一篇文章只讲一个知识点▄■▓。

文章不深奥,不需要钻研,在公交▄▓、在地铁、在厕所都可以阅读,随时随地涨姿势▓█。

文章不涉及代码,不烧脑细胞,人人都可以学习█■▄。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注