- •Содержание Назначение и условия применения программы
- •Характеристики программы
- •Обращение к программе Синтаксис командной строки и правила задания опций
- •Управление стадиями обработки и выводом компилятора
- •Опции управления диалектом языка Си
- •Опции вывода и подавления предупреждений
- •Опции отладки
- •Опции оптимизации
- •Опции препроцессора
- •Передача опций ассемблеру
- •Опции каталогов поиска
- •Опции задания целевой машины и версии компилятора
- •Машинно-зависимые опции для целевой платформы
- •Опции генерации кода
- •Переменные окружения, управляющие работой компилятора
- •Перечень опций, не описанных в данной инструкции
- •Сообщения
- •Приложение а. Бинарные утилиты
- •Утилита objcopy Общие сведения
- •Формат командной строки
- •Описание опций
- •Утилита objdump Общие сведения
- •Формат командной строки
- •Описание опций
- •Редактор связейld Общие сведения
- •Описание опций
- •Переменные окружения
- •Ассемблер as Общие сведения
- •Формат командной строки
- •Входные файлы и исходная программа
- •Выходные (объектные) файлы
- •Предупреждения и сообщения об ошибках
- •Общие опции командной строки
- •Специфические опции целевой платформы
- •Лист регистрации изменений
Переменные окружения, управляющие работой компилятора
Описанные в этом разделе переменные окружения задают каталоги для поиска выполняемых программ компилятора и включаемых файлов. Отметим, что опции -B, -I, используемые для тех же целей, имеют приоритет над переменными окружения, которые, в свою очередь имеют приоритет над списками поиска, установленными в конфигурации компилятора.
PATH
Общесистемная переменная окружения, содержит список путей для поиска выполняемых файлов. Для вызова компилятора СКРВ Багет по короткому имени (gcc) и/или по длинному имени (bt23b-gcc) необходимо, чтобы маршрутное имя каталога, содержащего эти команды, присутствовало в списке. При стандартной установке компилятора это будет маршрут/CKCPB/local/H-linux86/bin.
TMPDIR
Если эта переменная определена, то она задает каталог, который следует использовать для размещения временных файлов. Компилятор создает временные файлы для передачи промежуточных данных от одной стадии обработки к следующей (например от препроцессора к компилятору).
GCC_EXEC_PREFIX
Если эта переменная определена, то она задает каталог, в котором компилятор будет искать программы, отвечающие за различные стадии обработки исходных файлов. При формировании полного имени искомой программы слэш после значения GCC_EXEC_PREFIXне вставляется, поэтому он должен входить в значениеGCC_EXEC_PREFIX(если он нужен), например при работе вkshустановка переменной может иметь вид:
GCC_EXEC_PREFIX=/CKCPB/local/H-linux86/lib/gcc-lib/ export GCC_EXEC_PREFIX
Если найти нужную программу при помощи GCC_EXEC_PREFIX не удалось, компилятор продолжит поиск, используя переменнуюCOMPILER_PATH, а затем стандартные каталоги (/usr/lib/gcc, /usr/local/lib/gcc-lib).
Префикс, заданный при помощи опции -B, имеет приоритет надGCC_EXEC_PREFIX.
По умолчанию в качестве значений GCC_EXEC_PREFIXиспользуется подкаталогlib/gcc-libвнутри установочного каталога, который был задан при конфигурировании во время установки компилятора.
Значение переменной GCC_EXEC_PREFIXучаствует также в определении каталогов для поиска включаемых файлов. К списку этих каталогов добавляются
$GCC_EXEC_PREFIX/машина/версия/include
$GCC_EXEC_PREFIX/машина/версия /sys-include
COMPILER_PATH
Значением переменной COMPILER_PATHдолжен быть список имен каталогов, разделенных двоеточиями. Компилятор просматривает эти каталоги, если какая-либо выполняемая программа компилятора не найдена в каталогеGCC_EXEC_PREFIX.
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
OBJC_INCLUDE_PATH
Значением каждой их этих переменных является список имен каталогов, разделенных двоеточиями, аналогичный значению переменной PATH. При поиске заголовочных файлов компилятор будет просматривать каталоги из спискаC_INCLUDE_PATHпосле каталогов, заданных опцией-I, и перед стандартными каталогами заголовочных файлов.
DEPENDENCIES_OUTPUT
Если эта переменная установлена, то ее значение указывает, как компилятор будет выводить make-правила для объектных файлов, соответствующих исходным файлам. Вывод аналогичен тому, который производится по опции-M, но он поступает в отдельный файл и выполняется в дополнение к обычной компиляции.
Значением переменной DEPENDENCIES_OUTPUT может быть просто имя файла, в который следует выводитьmake-правила, целями которых будут объектные файлы, соответствующие исходным. ЗначениеDEPENDENCIES_OUTPUTможет также иметь вид "файл цель". В этом случае правила будут выводиться вфайл, а в качестве цели в них будет фигурироватьцель.