Linux Novice Вопрос: выход компилятора GCC - PullRequest
4 голосов
/ 08 мая 2011

Я полный новичок в Linux.У меня Mint на ноутбуке, и я недавно поиграл с ним.

Я написал простую программу на Си и сохранил файл.Затем в командной строке я набрал

gcc -c myfile

и выдал файл с именем a.out.Я наивно (после многих лет использования Windows) ожидал появления хорошего .exe-файла.Я понятия не имею, что делать с этим файлом a.out.

Ответы [ 2 ]

8 голосов
/ 08 мая 2011

Назовите его с помощью -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 - это остаток старых версий Unix, где он был исполняемым форматом.Линкеры по-прежнему называют файлы a.out по умолчанию, хотя они обычно производят исполняемые файлы формата ELF, а не a.out.

3 голосов
/ 08 мая 2011

a.out - исполняемый файл.

запустите его:

./a.out
...