Spec-Zone.ru › GCC 8

3 Опции командной строки GCC

При вызове GCC он обычно выполняет предварительную обработку, компиляцию, сборку и линковку. «Общие опции» позволяют остановить этот процесс на промежуточной стадии. Например, опция -c указывает на то, что компоновщик не должен запускаться. Затем вывод состоит из объектных файлов, созданных ассемблером. См. Опции, контролирующие вид вывода.

Другие опции передаются одному или нескольким этапам обработки. Некоторые опции контролируют предварительную обработку, а другие — сам компилятор. Другие опции контролируют ассемблер и компоновщик; большинство из них не документированы здесь, так как вам редко нужно их использовать.

Большинство командно-строчных опций, которые вы можете использовать с GCC, полезны для C-программ; если опция полезна только с другим языком (обычно C++), об этом прямо сказано в описании. Если описание конкретной опции не упоминает язык исходного кода, вы можете использовать эту опцию со всеми поддерживаемыми языками.

Обычно GCC запускается с помощью исполняемого файла gcc, или machine-gcc при кросс-компиляции, или machine-gcc-version для запуска определенной версии GCC. При компиляции C++-программ вы должны вызвать GCC как g++ вместо этого. См. Компиляция C++-программ для информации о различиях в поведении между gcc и g++ при компиляции C++-программ.

Программа gcc принимает опции и имена файлов в качестве операндов. Многие опции имеют имена из нескольких букв; поэтому несколько однобуквенных опций нельзя объединять: -dv сильно отличается от ‘-d -v’.

Вы можете смешивать опции и другие аргументы. В большинстве случаев порядок не имеет значения. Порядок имеет значение, когда вы используете несколько опций одного типа; например, если вы указываете -L более одного раза, каталоги просматриваются в указанном порядке. Также важно расположение опции -l.

Многие опции имеют длинные имена, начинающиеся с ‘-f’ или с ‘-W’ — например, -fmove-loop-invariants, -Wformat и так далее. Большинство из них имеют положительную и отрицательную форму; отрицательная форма -ffoo — -fno-foo. В данном руководстве документируется только одна из этих двух форм, не являющаяся по умолчанию.

См. Индекс опций GCC для индекса опций GCC.

• Краткое описание опций: Краткий список всех опций без объяснений.
• Общие опции: Управление видом вывода: исполняемый файл, объектные файлы, файлы ассемблера или предварительно обработанный исходный код.
• Вызов G++: Компиляция C++-программ.
• Опции диалекта C: Управление вариантом языка C, который компилируется.
• Опции диалекта C++: Вариации языка C++.
• Опции диалектов Objective-C и Objective-C++: Вариации Objective-C и Objective-C++.
• Опции форматирования сообщений диагностики: Управление форматированием сообщений диагностики.
• Опции предупреждений: Насколько придирчивым должен быть компилятор?
• Опции отладки: Создание отлаживаемого кода.
• Опции оптимизации: Степень оптимизации?
• Опции инструментирования: Включение профилирования и дополнительной проверки ошибок во время выполнения.
• Опции препроцессора: Управление файлами заголовков и макроопределениями. Также получение информации о зависимостях для Make.
• Опции ассемблера: Передача опций ассемблеру.
• Опции линковки: Указание библиотек и т.д.
• Опции каталогов: Где найти файлы заголовков и библиотеки. Где найти исполняемые файлы компилятора.
• Опции генерации кода: Указание соглашений для вызовов функций, расположения данных и использования регистров.
• Опции разработчика: Вывод информации о конфигурации GCC, статистики и отладочных дампов.
• Опции подмоделей: Опции, специфичные для целевой системы, такие как компиляция для определенного варианта процессора.
• Файлы спецификаций: Как передавать переключатели дочерним процессам.
• Переменные среды: Переменные среды, влияющие на GCC.
• Предварительно скомпилированные заголовки: Компиляция заголовка один раз и использование его многократно.

Далее: Реализация C, Предыдущее: Стандарты, Вверх: Наверх [Оглавление][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-8.5.0/gcc/Invoking-GCC.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API