Linux新手问题:GCC编译器输出

时间:2011-05-08 14:26:19

标签: c linux gcc compilation

我是Linux的新手。我在笔记本电脑上有Mint,最近一直在玩它。

我写了一个简单的C程序并保存了文件。 然后在命令行中输入

gcc -c myfile

然后弹出一个名为a.out的文件。我天真地(经过多年的Windows使用)预计会出现一个很好的.exe文件。我不知道如何处理这个a.out文件。

2 个答案:

答案 0 :(得分:8)

使用-o命名并跳过-c

gcc -Wall -o somefile myfile

您应该使用.c扩展名来命名您的源文件。

典型的编译方式,例如将两个源文件放入可执行文件中:

#Compile (the -c) a file, this produces an object file (file1.o and file2.o)

gcc -Wall -c file1.c
gcc -Wall -c file2.c

#Link the object files, and specify the output name as `myapp` instead of the default `a.out`

gcc -o myapp file1.o file2.o

您可以将其分为一步:

gcc -Wall -o myapp file1.c file2.c

或者,对于具有单个源文件的情况:

gcc -Wall -o myapp file.c

-Wall部分意味着“启用(几乎)所有警告” - 这是一个你应该从一开始就习惯的习惯,它会为你节省很多麻烦,以后再调试奇怪的问题。

a.out名称是旧版unixes的剩余名称,它是一种可执行格式。默认情况下,链接器仍然命名文件a.out,尽管它们现在倾向于生成ELF而不是a.out格式的可执行文件。

答案 1 :(得分:3)

a.out是可执行文件。

运行它:

./a.out