Главная » Просмотр файлов » GCC - The Complete Reference

GCC - The Complete Reference (537669), страница 72

Файл №537669 GCC - The Complete Reference (GCC - The Complete Reference) 72 страницаGCC - The Complete Reference (537669) страница 722015-07-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 72)

внутренняя структура н окружение Кроме того, опцию -ЕР можно использовать совместно с опцией -м для подавления компиляции и записи строки зависимостей в файл: 3 дсс -М -Му дерепктв.Генг дегвпои.с Другим способом имя выходного файла можно указать с помо)цью переменной среды переепеестея 0<)тРпт, Опции -м и -Ем обнаружат отсутствие заголовочного файла и выведут об этом отчет. Лри необходимости подавления такого рода сообщений можно указать опцию -МР вместе с опциями -М и -ММ, которая сгенерирует фиктивнь<е ссылки для каждого заголовочного файла.

Опция -мт может использоваться совместно с опцией -м или -мм для указания имени каждого заголовочного файла, как показано в примере: Ф дсс -И -Ит храпя.о дегвпои.с храпя.ог дегвпои.с вггша)тег.п шоеЬас)т.Ь вноивггтпд.п Информация о самом компиляторе Существует несколько доступных опций, которые позволяют определить тип применяемого компилятора и параметры его конфигурации. Например, номер версии компилятора можно определить с помощью следующей команды: 4 дсс -оишрчегвтоп Для определения целевой машины, т.е, типа того компьютера, для которого компилятор создает объектные файлы, выполните следующую команду: Ф дсс -сишршасЬ1пе Отчет о времени компиляции Для генерации листинга времени, затраченного на отдельных этапах компиляции, используется опция -гс1ше-герогс.

Эта опция в основном предназначена для разработчиков компиляторов, тем не менее, ее можно использоватьдля определения относительной сложности различных программ. Результат компиляции при использовании этой опции выглядит следующим образом: Ехесиг1оп Е1шев (весопйв) дагЬаде со11есегоп : 1.13 11те апа1увтв О.О1 ргергосеввхпд О.4З 1ехтса1 апа1ув1в : 0.38 рагвег 2.72 раса 1 0.02 чагсопве 0.05 тпгедгае1оп О.оз 1оса1 а11ос 0.01 дзоЬа1 а11ос гсвг ое сошрттагтоп тотаь 4.

84 <2ЗЪ) ив. < ох) ив- ( 9Ы ивг ( втт) ивг (56Ы ивг ( ОЫ ивг ( 1Ы ивг ( 1Ы ивг ( ОЫ ивг ( ОЫ ивг ( Отт) ивг 0.00 ( ОЕ) О.оо < ох) о.оа <24х) 0.10 <29Ы 0.14 <41%) 0.00 ( ОЫ 0.00 ( ОЫ О.О1 < Зтт) 0.00 ( ОЪ) 0.00 ( ОЫ о.о1 ( зЫ О.З4 вув 0.50 вув 0.00 вув вув О.ОО вув З.ОО вув 0.00 вув 0.50 вув 0,00 вув 0.00 вув 0.00 вув о.оо 5.00 <1ОЫ иа11 ( ОЫ иа11 <2оЫ иазз < ОХ) иа11 (бои иа11 ( ОЫ иа11 (10Ъ) иа11 < ОХ) иа11 ( ОЫ иа11 ( ОЫ иа11 ( Отт) иа11 глава тв. выход компилятора 323 В приведенном листинге значения показаны в секундах и в процентном отношении продолжительности каждого этапа по отношению к общей продолжительности компиляции.

Время иве — это время, по~раченное на выполнение кода компилятора. Время вув соответствует времени, затраченному на выполнения системных вызовов (таких как ввод и вывод), а время ма11 представляет собой фактические затРаты времени. Ключи подпроцессов Программа дсс является оболочкой (верхним уровнем) для других программ, таких как компилятор отдельного языка, ассдмблер и компоновщик. Имена подпроцессов и передаваемые им опции настраиваются и устанавливаются во время конфигурирования и компиляции дсс. Для опрелеления спецификаций, которые были использованы для создания аргументов ко)чандной строки подпроцессов„введите следующую команду: Ф асс -ссшрареса ! шоте Спецификация для опций и аргументов, перелаваемых подпроцессу, состоит из одной строки, Набор спецификаций по умолчанию для каждого основного подпроцесса встроен в дсс и автоматически становится частью компилятора, тем не менее, действующие по умолчанию строки спецификации можно подменять при конфигурировании компилятора.

Вот пример информации, нахоляшейся а строке спецификации, это — спецификация, используемая лля вызова препроцессора С: *срр: Ырсе)х:-р Ровтх вооясе) Ыреихеас;-р вяемтв)цчт) С помощью этой спецификации при вызове срр опция --реевых командной строки дсс приведет к использованию в командной строке срр опции -)) ровтх воипсп, а опция --рг)згеаб — к использованию в команлной строке срр опции -и вппмтвмт. Строка спецификации, устанавливающая условия для всех возможных опций, передаваемых подпроцессу, может быть довольно сложной. Примером более сложной строки спецификации (далеко не самой сложной) может служить строка вызова ассемблера: *авшг Ытз-)г) Ыду: ) Ы 1)яш:-яу) Ыа) Ыт) Давайте разберем этот пример. Если в команлной строке дсс будет указана опция -т, то в командной строке ассемблера будет присутствовать опция -тг. Если в команлной строке дсс будет указана опций -ЯУ, она не передается ассемблеру, но если опция -дп не установлена, то в команлную строку ассемблера будет внесена опция -ау.

Если для дсс указаны опции -р или -т, то каждая из них будет передана ассемблеру Остальные опции ассемблеру не передаются. 324 Честь!И. Внутренняя структура и окружение Расширенная отладочная информация компилятора Опция -ст может использоваться для указания системе ОСС выводить внутреннюю информацию компилятора на различных этапах процесса компиляции. Полученная таким образом информация может быть полезной только для тех, кто работает над самим компилятором.

Поэтому, несмотря на то, что информация достаточно подробная, она вряд ли пригодится вам в процессе отладки или анализа приложения. Вывод информации можно организовать в одной или нескольких точках процесса компиляции. Полный набор возможностей приводится в описании опции -(т в приложении Г Выходные данные будут практически одними и теми же лля всех точек. Они будут содержать информацию об удаленных ненужных инструкциях, выделении регистров, освобождении регистров (когда содержащееся в регистре значение удаляется) и генерируемые инструкции на внутреннем языке регистрового переноса (Кеа)з(ег Тгапз(ег [.апяцаяе, КТ[.). Например, следующая простая программа сравнивает одно значение с другим и определяет должны ли выполняться операторы в ответвлении; /» вноикЪлвр.с */ 1пг а = 44/ вгаеьс 1пг Ь = 22; 1пг паьп(ьпг агдс,сьаг »агдт[)) ( тт(а > Ы ( а/ е1ве ( а Ь; ) ) Следующая команда компилирует программу и запрашивает отладочные данные непосредственно после генерации КТЕ-кода: Ф дсс -сг вцоиФлпр.с -о вноисспр Дамп отладочной информации записывается в файл вьоме[щэр.с.

оо. ге1 и выглядит примерно так: ;/ Кипссьоп па1п (поев 2 О 5 МОтК тнан ПКЬКтвр -1З4744О721) <ьпвп 5 2 б (п11) (рага11е1[ (вее (гед/га81 7 евр) (апдиа1 (гед/Е!81 7 евр) (сопве апг -16 [Охггггегео)))) (с1оЬЬег (гед:СС 17 Е1адв)) ) ) -1 (пьь) (п(1)) (ьпвп б 5 7 (п11) (вес (геда81 59) (сопвс ьпс 0 [Охо))) -1 (п11) 32б Часть [И. Внутренняя структура и окру;.кение (ПОГЕ 24 гЗ 26 МОТЕ 1ивн РЕЬЕТЕР -134744О721) (лпвп 26 24 27 (пл1) (вег (гедз81 63) (пвш/Ез81 (ВУЮЬО1 геЕз81 ( Ь")) [О Ь+О 84 К32])) -1 (п11) (пл1)) (Епвп 27 26 23 (п11) (вес (пеп/Е з 81 (ВтзпЬо1 геЕз31 ( "а" ] ) [О а+О 34 КЗ2] ) <гедз81 63)) -1 (п11) (п41)) (себе 1аЬе1 23 27 29 3 "" "" [О ивея]) (ваге 29 23 33 МОТЕ 1888 РПМСТ1ОМ ЕМП -1347440721) (Епвп 33 29 34 (п11) (с1оЬЬег <гед/Ез81 О еах)) -1 (п11) (п11)) (Епвп 34 33 31 (п11) (с1оЬЬег (гедз31 53)) -1 (п11) (п11)) (соз[е 1аЬе1 31 34 32 1 "" '"" [О ивев]) (лпвп 32 31 35 (паа] (вес (гед/лз81 О еах) (гедз31 53) ) -1 (пз.1) (пл1)) (Епвп 35 32 О (п11) (иве (гед/Ез31 О еах)) -1 (п11) (п41)) Информация о файлах и каталогах Компилятор ССС имеет набор опций, при указании которых компилятор осуществляет поиск на диске требуемых файлов.

Поскольку каталоги, в которых компилятор выполняет поиск библиотек„определяются конфигурацией системы, вам может понадобиться определить местоположение используемой библиотеки. Это можно сделать с помоц<ью опции -рг1пе-Е118-палке. Например, так можно ОП- ределить местоположение библиотеки 11Ьдсс. а: 3 дсс -ргапЕ-Е11е-папе=11Ьдсс.а /ивг/1 ЕЫдсс-11ЫЕ536-рс-11пих-дпи/3 .

2/1лЬдсс. а Вообше опцию -ргЕпс-ЕЕ1е-паше мо]кно использовать для определения местоположения любой библиотеки, но для бнблиотеки 1ЕЬдсс. а есть собственная оп ция: б дсс -ргапг-1ЕЬдсс-ЕЕ1е-пвазе /ивг/1лЫдсс-1лЫл536-рс-11пих-дпи/3.2/3 ЕЬдсс.а Аналогично вы имеете возможность определить полный путь к запускаемым програмлзам таких внутренних подпроцеесов, как сс1 и сс1оЬз.

Например, для определения местоположения файла Ет 71: б дсс -рг1пг-ргод-папе=Е771 /ивг/11Ыдсс-1лЫ1586-рс-1лпих-дпи/3. 2/Е771 Глава тй. Выход компилятора 327 С помощью следующей команды можно определить каталог установки ОСС и полный путь как к программам, так и к библиотекам: В ясс -рсьве-аеехсь-савв >раен.вехе Результат выполнения этой команды может быть довольно большим, а пути выводятся в виде одной непрерывной строки, поэтому результат удобнее перенаправить в файл, который в дальнейшем можно проанализировать с помощью программы- редактора. Сначала в файле результатов указывается каталог установки компилятора, а затем пути к программам и библиотекам.

Характеристики

Тип файла
DJVU-файл
Размер
6,08 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее