Предварительные требования:
- gcc установлен на вашем компьютере
- gcc зарегистрирован в PATH
- знание некоторых основных команд терминала, поскольку gcc является инструментом командной строки.
TL;DR
Компиляция:
gcc -c filename.c
Связывание:
gcc filename.o
Запуск программы:
./a.out (Mac and Linux) a.exe (Windows)
Компиляция и компоновка одной командой:
gcc filename.c
Hello World!
Давайте сначала создадим простую программу на языке C и назовем ее hello.c.
Теперь, когда мы закончили кодирование, мы готовы построить нашу программу.
Чтобы построить программу, нам нужно сначала скомпилировать исходный файл в объектные файлы
, а затем связать их вместе в один исполняемый файл.
Компиляция
Чтобы скомпилировать, откройте терминал и перейдите в папку, в которой вы сохранили hello.c
Затем введите:
gcc -c hello.c
Давайте разберем команду, которую мы выполнили
*gcc — это наш компилятор. Мы запускаем его, введя его имя, gcc, в командную строку.
* -c — это говорит gcc скомпилировать наши исходные файлы в объектные файлы.
* имя файла (в нашем случае hello.c) — исходный файл нашей программы c.
После выполнения этой команды в вашем каталоге должен появиться еще один файл с именем hello.o.
hello.o — это объектный файл. GCC создает объектные файлы для каждого исходного файла, прежде чем связать
их все в окончательный исполняемый файл. В нашем случае у нас есть только один исходный файл hello.c.
Если у вас есть несколько исходных файлов, вы можете скомпилировать их
gcc -c filename1.c filename2.c (you can add more …)
и у вас будет объектный файл для каждого вашего исходного файла.
(В приведенном выше примере это будут filename1.o и filename2.o)
Связывание
В терминале введите:
gcc hello.o
Как мы видим, команда для линковки почти такая же, как та, которую мы использовали для компиляции.
Основное отличие в том, что нет -c и имена файлов являются объектными файлами.
Если вы иметь несколько объектных файлов, это будет выглядеть так:
gcc filename1.o filename2.o (you can add more …)
Теперь у вас должен быть исполняемый файл в вашем каталоге. По умолчанию он называется a.out в Mac и Linux и
a.exe в Windows.
Чтобы установить имя исполняемого файла, нам просто нужно добавить -o и желаемое имя файла.
gcc hello.o -o helloworld
В приведенном выше примере исполняемый файл, который будет создавать gcc, будет называться helloworld вместо имени по умолчанию a.out или a.exe.
Компиляция и компоновка «Все в одном»
Компиляцию и компоновку можно выполнить с помощью одной команды. Давайте попробуем это с нашим исходным файлом, hello.c.
gcc hello.c -o helloworld
И это все. После выполнения этой команды у нас будет исполняемый файл с именем helloworld.
Запуск программы
Чтобы запустить нашу программу c, перейдите в каталог, где находится ваш исполняемый файл, затем введите ./your_executable_filename, если вы работаете на
Mac или Linux. , или your_executable_filename, если вы работаете в Windows. В нашем случае это будет:
(Мак и Линукс)
./helloworld
(Виндовс)
helloworld
Вот и все. Теперь вы можете использовать gcc для создания ваших программ на C.
Надеюсь это поможет!