3 Параметры командной строки GCC
При вызове GCC обычно выполняется предварительная обработка, компиляция, сборка и компоновка. «Общие параметры» позволяют остановить этот процесс на промежуточной стадии. Например, параметр -c указывает на то, что компоновщик не должен запускаться. Тогда выходные данные будут состоять из объектных файлов, созданных сборщиком.
Другие параметры передаются на один этап обработки. Некоторые параметры контролируют предварительный процессор, а другие — сам компилятор. Еще одни параметры контролируют сборщик и компоновщик; большинство из них не документированы здесь, так как вам редко приходится использовать их.
Большинство параметров командной строки, которые можно использовать с GCC, полезны для программ на языке C; когда параметр полезен только с другим языком (обычно C++), это явно указано в описании. Если описание определенного параметра не упоминает язык исходного кода, вы можете использовать этот параметр со всеми поддерживаемыми языками.
См. Компиляция программ на C++ для справки по специальным параметрам для компиляции программ на C++.
Программа gcc принимает параметры и имена файлов в качестве операндов. Многие параметры имеют многобуквенные имена; поэтому несколько однобуквенных параметров нельзя группировать: -dv сильно отличается от -d -v.
Вы можете смешивать параметры и другие аргументы. В большинстве случаев порядок не имеет значения. Порядок имеет значение, когда вы используете несколько параметров одного типа; например, если вы указываете -L более одного раза, каталоги просматриваются в указанном порядке. Также важно расположение параметра -l.
Многие параметры имеют длинные имена, начинающиеся с '-f' или '-W' — например, -fmove-loop-invariants, -Wformat и так далее. Большинство из них имеют как положительную, так и отрицательную формы; отрицательная форма -ffoo — -fno-foo. В этом руководстве документируется только одна из этих двух форм, та, которая не является стандартной.
См. Индекс параметров для индекса параметров GCC.
| • Краткое описание параметров: | Краткий список всех параметров без объяснений. | |
| • Общие параметры: | Управление типом вывода: исполняемый файл, объектные файлы, файлы ассемблера или предварительно обработанный исходный код. | |
| • Вызов G++: | Компиляция программ на C++. | |
| • Параметры диалекта C: | Управление вариантом языка C, подлежащего компиляции. | |
| • Параметры диалекта C++: | Разновидности C++. | |
| • Параметры диалектов Objective-C и Objective-C++: | Разновидности Objective-C и Objective-C++. | |
| • Языконезависимые параметры: | Управление тем, как должны форматироваться диагностические сообщения. | |
| • Параметры предупреждений: | Насколько требовательным должен быть компилятор? | |
| • Параметры отладки: | Таблицы символов, измерения и дампы отладки. | |
| • Параметры оптимизации: | Уровень оптимизации? | |
| • Параметры предварительного процессора: | Управление заголовочными файлами и определениями макросов. Также получение информации о зависимостях для Make. | |
| • Параметры ассемблера: | Передача параметров ассемблеру. | |
| • Параметры компоновщика: | Указание библиотек и т. д. | |
| • Параметры каталогов: | Где найти заголовочные файлы и библиотеки. Где найти исполняемые файлы компилятора. | |
| • Файлы спецификаций: | Как передавать переключатели подпроцессам. | |
| • Параметры целевой системы: | Запуск кросс-компилятора или старой версии GCC. | |
| • Параметры подмодели: | Указание незначительных вариантов аппаратного обеспечения или соглашений, например, 68010 против 68020. | |
| • Параметры генерации кода: | Указание соглашений для вызовов функций, структуры данных и использования регистров. | |
| • Переменные окружения: | Переменные окружения, влияющие на GCC. | |
| • Предварительно скомпилированные заголовки: | Компиляция заголовка один раз и использование его многократно. |
Далее: Реализация C, Предыдущее: Стандарты, Вверх: Главная [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-5.5.0/gcc/Invoking-GCC.html