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

Lecture_4

.txt
Скачиваний:
12
Добавлен:
15.06.2014
Размер:
1.85 Кб
Скачать
Средства автоматизации разработки ПО

технология make (использование утилиты) - используется спец. примитивный язык "make-файлов"

фактически как преобразовывать файл:
пусть 6 раз
main.c funo.c defs.h
^ ^ ^
|_______________|_______________|
входят в main.c

gсс -с main.c -> main.o - объектиный файлы, требующие связывания (компановки) с библиотеками
gcc -c fuma.c -> fuma.o
gcc -o programm main.o fuma.o - компилирование для полной программы

makefile - главные части -rules (правила)

цель1 цель2 ... цельN: реквизит1...реквизитK
(табуляция)команда
.
.
.

program:main.o fuma.o
gcc -o program main.o fuma.o
main.o:main.c def.h
gcc -c main.c
funa.o: funa.c def.h
gcc -c funa.c

использовать перменные(тектовые)
переменные = текст (м.б пробелы)

OBJ = main.o funa.o
programm: $(OBJ)
gcc -o programm $(OBJ)
$(OBJ): def.h

НЕДОСТАТОК:
привязка к конкретной ОС

при переходе к мобильным системам в JAVA отступили от make-утилит и им на смену пришли(а): ant Apache
файл - biuld.xml
описывает project
внутри него target(s)
внутри них описываются задачи task

<project name="MyProjExample" default="all">
<target name="linking" depends="compilem,compilef">
<exec executable="gcc">
<arg value="-oprogram">
<arg value="main.o">
<arg value="funa.o">
<echo>I am linking</echo>
</exec>
</target>
<echo>We are work</echo>
</project>


//внутри проекта, так же для compilef
<target name="compilem">
<exec executable="gcc">
<arg value="-c">
<arg value="funa.o">
<echo>I am linking</echo>
</exec>
</target>

для составления сложных условий
конструкция на теге condition
<condition property="o.exists">
<and>
<available property="main.o.exists" file="main.o">
<available property="funa.o.exists" file="funa.o">
</and>
</condition>
Соседние файлы в предмете Технологии Разработки Программного Обеспечения