Сборка исполняемого файла Linux с использованием GCC - PullRequest
6 голосов
/ 17 июля 2009

Я использую Linux Ubuntu Intrepid Ibex и компилирую файлы C ++ с помощью GCC, но когда я компилирую, gcc создает файл a.out, это исполняемый файл, но как я могу сделать исполняемые файлы Linux? Спасибо!

Ответы [ 3 ]

19 голосов
/ 17 июля 2009

Этот исполняемый файл является «исполняемым файлом Linux», то есть исполняемым в любой недавней системе Linux. Вы можете переименовать файл в то, что вы хотите, используя

rename a.out your-executable-name

или еще лучше, скажите GCC, куда поместить выходной файл, используя

gcc -o your-executable-name your-source-file.c

Имейте в виду, что прежде чем системы Linux позволят вам запустить файл, вам может потребоваться установить его "исполняемый бит":

chmod +x your-executable-name

Также помните, что в Linux расширение файла имеет очень мало общего с тем, чем оно является на самом деле - ваш исполняемый файл может называться something, something.out или даже something.exe, и до тех пор, пока он создается GCC и вы делаете chmod +x для файла, вы можете запустить его как исполняемый файл Linux.

4 голосов
/ 17 июля 2009

Чтобы создать исполняемый файл с именем myprog, вы можете вызвать gcc следующим образом:

gcc -c -o myprog something.c

Вы также можете просто переименовать файл * .out, сгенерированный gcc, на нужное имя.

2 голосов
/ 17 июля 2009

Это исполняемый файл. Если вам не нравится a.out, вы можете передать компилятору флаг -o. Если исполняемый файл не помечен исполняемым битом, вам нужно сделать это самостоятельно:

chmod u+x ./a.out
./a.out

НТН.

...