Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

обычного пользователя независимо от того в какой реализации Unix он работает необходимо чуть больше десятка.html

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

Рис. 3.2..  Схема подготовки исполняемой программы в Unix:

*.c исходный модуль на языке Си

*.a модуль на ассемблере

*.o объектный модуль

a.out стандартное имя исполняемого файла

cc компилятор языка Си

as компилятор языка ассемблера

ld компоновщик (редактор связей)

Компилятор языка Си позволяет за один вызов выполнить всю цепочку преобразования исходного модуля в исполняемую программу. Исходный модуль транслируется в модуль на языке ассемблера, затем создается объектный модуль и компоновщик производит исполняемый файл со стандартным именем a.out. Для подключения к исполняемой программе функций ввода-вывода, математических функций и т.п., компоновщик использует различные библиотеки объектных модулей.

Выбор фиксированного имени исполняемого модуля (a.out) объясняется тем, что в режиме отладки программ нет необходимости хранить промежуточные версии исполняемых программ и вполне можно называть их одним именем.

Формат команды cc, вызывающей компилятор языка Си, предусматривает задание следующих параметров (в форматах команд операционных систем принято помещать необязательные элементы в квадратные скобки [ ]):

 cc [-ключи]   исходные_модули [ключи_компоновщика]

   [объектные_модули]  [библиотеки]

где

ключи - однобуквенные параметры, задающие режимы работы компилятора.  перед каждым ключом должен стоять знак минус ('-'). После некоторых ключей могут указываться дополнительные параметры. Приведем некоторые (наиболее часто употребляемые) ключи команды cc:

-c - транслировать исходный модуль в объектный;

-p - провести только препроцессорную обработку исходного модуля;

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

-o имя_исполняемой_программы - при необхрдимости транслировать и задать произвольное (отличное от стандартного "a.out") имя для исполняемой программы;

исходные_модули - полные имена (с расширением "c") одного или нескольких исходных модулей;

объектные_модули - полные имена (с расширением "o") тех модудей которые будут использованы при построении исполняемой программы;

ключи компоновщика - задают режимы работы компоновщика (для нас представляет интерес ключ -l, определяющий имя библиотеки объектных модулей):

 -lбиблиотека_объектных_модулей

Если программа состоит их одного исходного модуля, то для построения исполняемого модуля достаточно выполнить команду

  %cc prog.c

 Примечание. Компилятор cc предполагает, что исходный модуль на языке Си имеет обязательное расширение  .c.

Исходный модуль prog.c  будет последовательно преобразован в модуль на языке ассемблера, объектный модуль, исполняемый модуль. Исполняемый модуль получит стандартное имя a.out. При повторном вызове компилятора языка Си командой cc  и указания в качестве параметра команды имени другого исходного модуля вновь полученный исполняемый модуль также будет иметь имя a.out, но будет соответствовать другому исходному (только что обработанному) модулю.

Для того чтобы определить произвольное имя исполняемого модуля, необходимо в команде вызова компилятора указать ключ -o и сразу за ним через пробел задать имя исполняемого модуля:

%cc -o begin prog.c

построение исполняемого модуля можно провести в два этапа с промежуточным получением объектного модуля:

  %cc -c prog.c

  %cc -o begin prog.o

 В первой строке применен ключ -с, в результате чего процесс обработки исходного модуля прервется, когда будет получен объектный модуль (prog.o).

Во второй строке определено имя исполняемого модуля begin и в качестве параметра команды cc указано имя объектного модуля (prog.o), полученного на предыдущем этапе.




1. тематический процесс посредством которого менеджеры регулируют деятельность организации обеспечивая ее с
2. тема единиц. Основные характеристики измерений
3. Функциональные асимметрии
4. Характеристика понятий и принципов бюджетного процесса в РФ
5. Лабораторная работа 2
6.  ПРЕДМЕТ И ЗАДАЧИ ИНЖЕНЕРНОЙ ГЕОДЕЗИИ Геодезия наука изучающая форму и размеры Земли геодезические
7. демократия Авторы БОРИС ОРЛОВ Источник Свободная мысль ’ 2 Февраль 2010 C
8. Казахстан2030 1997г B 1998г C 1999г D 1996г E 2000г 3
9. з курсу ldquo;Основи охорони праціrdquo; для студентів бакалаврського рівня підготовки денної та заочної фо
10. Курсовая работа- Вода очищена як розчинник в аптечній практиці
11. Брусника
12. первые орудия труда; ремесленничество в средние века; предпосылки создания машинной техники Ответ- Предм
13. Способы задания языков Цепочки символов
14. Средства массовой информации и политическая власть
15. САМАРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
16. Разработка маркетингового плана исследования агропредприятия
17. 1956 Прозрачность и яркость аромата ~ понятия абстрактные но в некоторых парфюмерных букетах они вполне о
18. під краю реберної дуги
19. На тему- Нарушения экологического равновесия Выполнила- Демко Валерия 8 А На всех стадиях св
20. Subject 12 ldder 13 plcement 14 foreign 15 process 16 cover 17 ttend 18 cndidtes 19 shortlisted 20 recruitment Prt 2 Writing