Я использую Linux Ubuntu Intrepid Ibex и компилирую файлы C++ с помощью GCC, но когда я компилирую, gcc создает **. Out * файл, то есть исполняемый файл, но как я могу сделать Linux исполняемые файлы? Благодаря!Построить исполняемый файл Linux с помощью GCC
ответ
Этот исполняемый файл является «исполняемым 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.
Это исполняет. Если вам не нравится a.out, вы можете передать флаг -o компилятору. Если исполняемый файл не отмечен исполняемым битом, вам необходимо сделать это самостоятельно:
chmod u+x ./a.out
./a.out
HTH.
Файл * .out уже является исполняемым, но как я могу создать собственный исполняемый файл Linux, встроенные исполняемые файлы linux не имеют расширения. –
В linux расширения не имеют значения. Вы можете просто переименовать файл во что угодно. – notnoop
Когда проблема разрешена, я знаю. Благодаря! –
Чтобы создать исполняемый файл с именем myprog
вы можете вызвать GCC, как это:
gcc -c -o myprog something.c
Вы также можете просто переименовать * .out файл GCC создает требуемое имя.
В чем разница между исполняемым файлом и исполняемым файлом Linux? – Ben
вы можете уточнить? Файлы '* .out' являются исполняемыми файлами. Вам нужен другой тип исполняемых файлов? – notnoop
Nathan, имя 'a.out' является историческим артефактом, начиная с самых ранних компиляторов Unix. См. Статью в Википедии по теме: http://en.wikipedia.org/wiki/A.out – quark