C语言 The output of GCC



我在Ubuntu操作系统上运行GCC。我用C编写了一个小程序,并尝试编译它。它的输出是一个a.out文件,就像在Windows上一样。我如何让它发布一个Linux可执行文件?

a.out可执行文件(假设您已经完成了完整编译,而不仅仅是生成对象文件,但这是最有可能的情况)。要运行它,请使用(从shell):

./a.out

如果你想给它一个不同的名字,只需重命名它,或者更好:

gcc -o actualname myprog.c

获得一个名为actualname的可执行文件,然后使用运行(当然)

./actualname

见以下文字记录:

pax> cat testprog.c
#include <stdio.h>
int main (void) { printf("Hi.nn"); return 0; }
pax> gcc testprog.c ; ./a.out
Hi.
pax> gcc -o xyzzy testprog.c ; ./xyzzy
Hi.

假设您的C文件是f.C.

gcc f.c提供了a.out可执行文件,您可以将其作为./a.out在终端中运行。

gcc f.c -o myprogmyprog作为可执行文件,您可以在终端中将其作为./myprog运行。

它是一个Linux可执行文件。a.out文件(实际a.out格式,而不是默认情况下名为a.out的文件)无法在Windows上执行。

在这两种情况下,最有可能得到一个可在本地系统中使用的标准可执行文件,但名称为a.out。在Linux上,它是一个ELF文件。

最新更新