很难说您在问什么。此问题模棱两可、含糊、不完整、过于宽泛或过于修辞,无法以目前的形式合理地回答。若要协助澄清此问题以便重新开启,请visit the help center。
9年前就关门了。gcc
中的-c
标志有什么作用?
比如说,你和你的朋友
gcc -c output0.c
和
gcc output0.c
?
我知道第二个是.a
文件,但我不知道什么是.a
文件。
另外,-o
在中的作用是什么
gcc output0.o -o output0
是否只是为了正确命名输出文件?
很难说您在问什么。此问题模棱两可、含糊、不完整、过于宽泛或过于修辞,无法以目前的形式合理地回答。若要协助澄清此问题以便重新开启,请visit the help center。
9年前就关门了。gcc
中的-c
标志有什么作用?
比如说,你和你的朋友
gcc -c output0.c
和
gcc output0.c
?
我知道第二个是.a
文件,但我不知道什么是.a
文件。
另外,-o
在中的作用是什么
gcc output0.o -o output0
是否只是为了正确命名输出文件?
3条答案
按热度按时间qni6mghb1#
-c
编译或汇编源文件,但不链接。链接阶段根本就没有完成。最终的输出是每个源文件的目标文件的形式。
默认情况下,源文件的目标文件名是通过用. o替换后缀.c、.i、.s等来创建的。不需要编译或汇编的无法识别的输入文件将被忽略。
-o文件
将输出放在file file中。这适用于任何类型的输出,无论是可执行文件、目标文件、汇编程序文件还是预处理的C代码。如果没有指定-o,默认情况下将可执行文件放在.out中,将source.suffix的目标文件放在source.o中,将其汇编程序文件放在source.s中,将预编译头文件放在source.suffix.gch中,和标准输出上所有预处理C源代码。
更多信息请参见GCC Manual Page
jckbn6z72#
从
man gcc
(第 * 节“控制输出类型的选项”*):...
-c编译或汇编源文件,但不链接。链接阶段根本就没有完成。最终的输出是每个源文件的目标文件的形式。
默认情况下,源文件的目标文件名是通过将后缀.c、.i、.s等替换为. o来创建的。
忽略不需要编译或汇编的无法识别的输入文件。
...
gpnt7bae3#
-c将指示GCC只将源文件编译为.o(对象)文件,但不调用链接器。
对于包含许多.c文件的项目,通常首先将所有.c文件编译为.o文件,然后将所有内容与库链接在一起。
-c
编译或汇编源文件,但不链接。链接阶段根本就没有完成。最终的输出是每个源文件的目标文件的形式。
默认情况下,源文件的目标文件名是通过将后缀〉.c、.i、.s等替换为. o来创建的。
忽略不需要编译或汇编的无法识别的输入文件。
Source