Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
38
Добавлен:
01.05.2014
Размер:
206.19 Кб
Скачать

Перечень опций, не описанных в данной инструкции

Описания следующих потенциально доступных опций компилятора не приведены в данном Руководстве в силу их неприменимости для данной целевой платформы.

Опции вывода и подавления предупреждений

Исключены описания следующих опций, относящихся к программам на языке Си++:

-Wenum-clash -Woverloaded-virtual

-Wreorder -Wsynth

-Wtemplate-debugging

Опции отладки

Опции для выдачи отладочной информации в разных форматах:

-ggdb -gstabs -gstabs+

-gcoff -gxcoff -gxcoff+

-gdwarf -ggdblevel -gstabslevel

-gcofflevel -gxcofflevel -gdwarflevel

-fpretend-float

-print-file-name=библиотека

-print-libgcc-file-name

Опции профилирования

-p -pg -a

Опции оптимизации

-fno-default-inline (имеет смысл только для Си++)

-fno-peephole(для MIPS этот вид оптимизации не реализован)

Опции редактирования внешних связей

(опущены все)

Опции каталогов поиска

-Lкаталог

Машинно-зависимые опции целевой платформы

-mmips-as -mgas -mgpopt -mmips-tfile

-mabicalls -mhalf-pic

-membedded-pic -EL

-EB -nocpp

Опции генерации кода

-fshared-data -fno-gnu-linker -finhibit-size-directive

+e0 +e1

Переменные окружения

LIBRARY_PATH

Входные и выходные данные

Входными данными для компилятора является совокупность файлов с программами на языке Си стандарта ANSI. В программах могут использоваться функции из стандартных библиотек ОС РВ Багет.

Характер выходных данных (результирующих файлов) зависит от применяемых опций компилятора: В качестве выходных данных компилятор может генерировать:

  1. Tекст программ на языке Си, обработанных препроцессором (при использовании опции -E).

  2. Совокупность программных файлов на языке ассемблера “ЭВМ Багет 23В” (при использовании опции-S).

  3. Совокупность объектных файлов в формате elf с порядком байт в слове “big-endian” и отладочной информацией в форматеdwarf.

Свойства выходных файлов компилятора определяются также применением опций отладки (п. ) и оптимизации (п. ).

Для объединения нескольких объектных файлов, полученных в результате компиляции в один объектный модуль с разрешением взаимных ссылок следует применять поставляемый в комплекте с компилятором редактор связей ld (см. п. ниже).

Сообщения

Сообщения компилятора подразделяются на 4 категории:

  1. Предупреждающие сообщения, имеющие структуру:

имя_файла:номер_строки:warning:сообщение

Предупреждающие сообщения, хотя и не препятствуют получению результирующего файла, как правило говорят о наличии сомнительных программных или языковых конструкций, которые могут быть источником ошибок при выполнении. Следует тщательно анализировать источник каждого такого сообщения.

Количество предупреждающих сообщений и их характер (степень “придирчивости” компилятора) можно регулировать при помощи опций вывода и подавления предупреждений, описанных в п. .

  1. Сообщения об ошибках при компиляции программы, имеющие структуру:

имя_файла:номер_строки:сообщение_об_ошибке

  1. Сообщения о неверном задании аргументов командной строки при запуске компилятора, имеющие структуру:

bt23b-gcc: сообщение_о_неверных_аргументах_командной строки

4. Сообщения об системных ошибках при поиске, запуске или обработке компонентов компилятора, имеющие структуру:

bt23b-gcc: сообщение

Все категории сообщений, кроме последней, относятся к компетенции прикладного программиста: он должен исправить ошибки в компилируемой программе или в командной строке запуска компилятора. Сообщения последней категории могут говорить о нарушениях целостности компилятора или о неверной настройке переменных окружения.

При получении следующих типов сообщений:

bt23b-gcc: command not found

specs file malformed after #characters

spec file has no spec for linking

Internal compiler error: program имяgot fatal signalсигнал

Invalid specification! Bug in cc

cannot open имя_файла

installation problem, cannot exec программа: File not found

Internal gcc abort.

необходимо:

  1. Проверить правильность значений переменных окружения, в особенности PATH,GCC_EXEC_PREFIX, COMPILER_PATH, C_INCLUDE_PATH. См. их описания в п. . Если обнаружены неверные значения переменных окружения, то исправить их.

  2. Повторите запуск компилятора с опцией -v, которая задает подробную выдачу информации о запуске компонентов компилятора, проанализируйте выдачу.

  3. Проверьте также содержимое /CKCPB/local/H-linux86/bt23b/include. Это должна быть символьная ссылка, указывающая на каталог включаемых файлов ОС РВ Багет.

Если в результате этих действий не удалось выявить и устранить причину ошибки, то обратитесь к системному программисту (администратору).

Соседние файлы в папке Еще материалы