How.com.vn работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 18 человек(а).
Количество просмотров этой статьи: 86 242.
В этой статье рассказывается, как скомпилировать программу из исходного кода на языке C с помощью компилятора GNU Compiler (GCC) для Linux или Minimalist Gnu (MinGW) для Windows.
Шаги
- В Unix-системе откройте терминал.
- Введите gcc --version и нажмите ↵ Enter. Отобразится версия компилятора C. Если команда не сработала, скорее всего, GCC не установлен.[1]
- Если компилятор не установлен, почитайте документацию к своему дистрибутиву Linux, чтобы узнать, как скачать соответствующий пакет.
- Если вы компилируете программу, написанную на языке C++, вместо «gcc» введите «g++».
- Перейдите в каталог, в котором хранится исходный код.
- Например, если файл с исходным кодом «main.c» находится в каталоге /usr/How.com.vn/source, введите cd /usr/How.com.vn/source.
- Введите gcc main.c -o HelloWorld. Замените «main.c» на имя файла с исходным кодом, а «HelloWorld» замените на имя конечной программы. Программа будет скомпилирована.
- Если на экране появились сообщения об ошибках, введите gcc -Wall -o errorlog file1.c, чтобы получить дополнительную информацию. Затем в текущем каталоге откройте файл «errorlog»; для этого введите cat errorlog.
- Чтобы скомпилировать одну программу из нескольких файлов с исходным кодом, введите gcc -o outputfile file1.c file2.c file3.c.
- Чтобы скомпилировать сразу несколько программ из нескольких файлов с исходными кодами, введите gcc -c file1.c file2.c file3.c.
- Запустите скомпилированную программу. Введите &# 46;/HelloWorld, где «HelloWorld» замените именем программы.Реклама
- Скачайте Minimalist GNU для Windows (MinGW). Эту версию GCC для Windows довольно легко установить. Установочный файл можно скачать на этом сайте.[2]
- Запустите установочный файл MinGW.
- Если файл не запустился автоматически, дважды щелкните по нему в папке для загрузок, а затем нажмите «Установить».
- Задайте параметры установки и нажмите Continue (Далее).
- Рекомендуем установить MinGW в папку по умолчанию, а именно в (C:\MinGW). Если нужно поменять папку, не выбирайте папку, в названии которой присутствуют пробелы, такую как «Program Files».[3]
- Выберите компиляторы, которые нужно установить.
- На левой панели рекомендуем нажать «Basic Setup» (Обычная установка). Затем на правой панели поставьте флажки рядом со всеми перечисленными компиляторами.
- Более опытные пользователи могут выбрать опцию «All packages» (Все пакеты) и отметить дополнительные компиляторы.
- Откройте меню Installation (Установка). Оно находится в верхнем левом углу MinGW.
- Нажмите Apply Changes (Применить изменения).
- Нажмите Apply (Применить). Компиляторы будут загружены и установлены.
- В путь к MinGW вставьте системные переменные среды. Сделайте следующее:
- Нажмите ⊞ Win+S, чтобы открыть строку поиска, и введите среда.
- В результатах поиска щелкните по «Изменение системных переменных среды».
- Нажмите «Переменные среды».
- Нажмите «Изменить» (под «Пользовательские переменные»).
- Прокрутите вниз информацию в поле «Значение переменной».
- Непосредственно под последней записью введите ;C:\MinGW\bin. Обратите внимание, что если вы установили MinGW в другую папку, введите ;C:\путь-к-папке\bin.
- Дважды нажмите «OK». Еще раз нажмите «OK», чтобы закрыть окно.
- Откройте командную строку в качестве администратора. Для этого:
- Нажмите ⊞ Win+S и введите строка.
- В результатах поиска щелкните правой кнопкой мыши по «Командная строка» и в меню выберите «Запуск от имени администратора».
- Нажмите «Да», чтобы разрешить внесение изменений.
- Перейдите в папку, в которой хранится файл с исходным кодом.
- Например, если файл с исходным кодом «helloworld.c» находится в папке C:\Source\Programs, введите cd C:\Source\Programs.
- Введите gcc helloworld.c -o helloworld.exe. Замените «helloworld» на имя файла с исходным кодом и имя программы. По завершении компиляции программы вы вернетесь в командную строку, при этом не будет никаких сообщений об ошибках.[4]
- Любые ошибки программирования должны быть устранены перед компиляцией программы.
- Чтобы запустить программу, введите ее имя. Если программа называется helloworld.exe, введите это имя, чтобы запустить программу.Реклама
Советы
- Компиляция кода с помощью флага -g приведет к созданию отладочной информации, которая может быть использована соответствующим отладчиком, например, GDB.
- Создайте сборочный файл проекта (make-файл), чтобы упростить компиляцию больших программ.
- Если вы активно используете оптимизацию, помните, что оптимизация по скорости может привести к снижению размера и, иногда, качества (и наоборот).
- При компиляции программы на языке C++ используйте G++ так же, как вы используете GCC. Помните, что файлы с исходным кодом на языке C++ имеют расширение .cpp, а не .c.
Что вам понадобится
- Компьютер под управлением Linux или Windows
- Базовые знания GNU/Linux и знание того, как устанавливать приложения
- Программный код
- Текстовый редактор (например, Emacs)
Источники
Была ли эта статья полезной?
⚠️ Disclaimer:
Content from Wiki How Русский language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.
- - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
- - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
- - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
- - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.