c99 — стандартный компилятор языка C

НАЗВАНИЕ

     c99 — стандартный компилятор языка C

СИНТАКСИС

     c99 [-cEgs] [-D имя[=значение]] … [-I каталог] … [-L каталог] …

         [-o выходной_файл] [-O уровень] [-U имя] … операнд …

ОПИСАНИЕ

     Так называется компилятор языка C, как того требует стандарт IEEE Std

     1003.1-2001 («POSIX.1»).

     Компилятор c99 принимает следующие опции:

     -c      Подавить компоновочную фазу компиляции и не удалять никакие полу-

             ченные объектные файлы.

     -D имя[=значение]

             Определить имя, как если бы это была директива #define языка C.

             Если «=значение» не задано, будет использовано значение 1.

             Заметьте, что для выполнения трансляции по стандарту IEEE Std

             1003.1-2001 («POSIX.1») необходимо определить

             _POSIX_C_SOURCE=200112L либо в исходном тексте, либо используя

             эту опцию.  Приоритет опции -D меньше, чем у опции -U.  Так, если

             имя используется сразу в функциях -U и -D, это имя не будет опре-

             делено вне зависимости от порядка следования опций.  Опция -D

             может быть указана несколько раз.

     -E      Копировать исходные файлы языка C в стандартный вывод, подставляя

             результат выполнения всех директив препроцессора; компиляция про-

             изведена не будет.

     -g      Генерировать символьную информацию в объектных или исполняемых

             файлах.

     -I каталог

             Добавить в алгоритм поиска заголовков с именами, не являющимися

             абсолютными путями, поиск в заданном каталоге до поиска в обычных

             местах.  Так, поиск заголовков, помещённых в двойные кавычки («»)

             будет производиться сначала в каталоге файла со строкой #include,

             затем в каталогах, указанных опциями -I, и наконец в обычных

             местах.  Для заголовков, чьи имена помещены в угловые скобки

             (<>), поиск заголовков будет произведён лишь в каталогах, указан-

             ных опциями -I, и затем в обычных местах.  Поиск по каталогам,

             указанных опциями -I, будет произведён в порядке их указания.

             Опция -I может быть указана несколько раз.

     -L каталог

             Добавить в алгоритм поиска библиотек, названных в объектах -l,

             поиск в заданном каталоге до поиска в обычных местах.  Поиск по

             каталогам, указанных опциями -L, будет произведён в порядке их

             указания.  Опция -L может быть указана несколько раз.

     -o выходной_файл

             Использовать путь выходной_файл, вместо стандартного a.out, для

             получаемого исполняемого файла.

     -O уровень

             Если уровень равен 0, выключить все оптимизации.  В противном

             случае, включить оптимизации на заданном уровне.

     -s      Генерировать объектные и/или исполняемые файлы, из которых уда-

             лена символьная и прочая информация, ненужная для правильного

             исполнения.

     -U имя  Удалить какое-либо начальное определение заданного имени.  Опция

             -U может быть указана несколько раз.

     Операнд принимается либо в форме пути, либо в форме библиотеки -l.  Необ-

     ходимо указать хотя бы один операнд в форме пути.  Поддерживаются опе-

     ранды следующих типов:

           file.c      Исходный файл языка C для компиляции и возможной компо-

                       новки.  Операнд должен быть в этой форме, если указана

                       опция -c.

           file.a      Библиотека объектных файлов, произведённая ar(1), пере-

                       даваемая напрямую компоновщику.

           file.o      Объектный файл, произведённый c99 -c и передаваемый

                       напрямую компоновщику.

           -l library  Искать библиотеку под названием liblibrary.a.  Поиск

                       библиотеки будет произведён, когда встретится её имя,

                       поэтому положение операнда -l имеет значение.

СМОТРИ ТАКЖЕ

     ar(1), c89(1), cc(1)

СТАНДАРТЫ

     Интерфейс утилиты c99 соответствует стандарту IEEE Std 1003.1-2001

     («POSIX.1»).  Поскольку утилита является оболочкой вокруг GCC, она

     ограничена функциональностью C99, в действительности реализованной в GCC.

     

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *