Презентация Многофайловый проект. Автоматизация сборки проекта онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Многофайловый проект. Автоматизация сборки проекта абсолютно бесплатно. Урок-презентация на эту тему содержит всего 28 слайдов. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Многофайловый проект. Автоматизация сборки проекта



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    28 слайдов
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    132.50 kB
  • Просмотров:
    66
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Многофайловый проект.
Содержание слайда: Многофайловый проект. Автоматизация сборки проекта.

№2 слайд
Недостатки однофайловых
Содержание слайда: Недостатки однофайловых проектов Одновременная работа над программой нескольких программистов становится неэффективной. Ориентирование в тексте программы становится сложным. Даже при локальном изменении перекомпилируется весь проект.

№3 слайд
Преимущества многофайловой
Содержание слайда: Преимущества многофайловой организации проекта Позволяет распределить работу над проектом между несколькими программистами. Код программы более удобочитаем. Сокращает время повторной компиляции. Повторное использование кода.

№4 слайд
Компиляция многофайлового
Содержание слайда: Компиляция многофайлового проекта // hello.c #include <stdio.h> void hello(void) { printf("Hello!\n"); }

№5 слайд
Компиляция многофайлового
Содержание слайда: Компиляция многофайлового проекта // hello.c #include <stdio.h> void hello(void) { printf("Hello!\n"); }

№6 слайд
Компиляция многофайлового
Содержание слайда: Компиляция многофайлового проекта

№7 слайд
Компиляция многофайлового
Содержание слайда: Компиляция многофайлового проекта // hello.c #include <stdio.h> void hello(void) { printf("Hello!\n"); }

№8 слайд
Компиляция многофайлового
Содержание слайда: Компиляция многофайлового проекта

№9 слайд
Заголовочные файлы hello.c
Содержание слайда: Заголовочные файлы // hello.c #include <stdio.h> void hello(void) { printf("Hello!\n"); } // hello.h void hello(void);

№10 слайд
Заголовочные файлы list.h
Содержание слайда: Заголовочные файлы // list.h struct list_node { void *data; struct list_node *next; }; // ...

№11 слайд
Заголовочные файлы list.h
Содержание слайда: Заголовочные файлы // list.h #ifndef __LIST_H__ #define __LIST_H__ struct list_node { void *data; struct list_node *next; }; // ... #endif // __LIST_H__

№12 слайд
Большой проект Компиляция c
Содержание слайда: «Большой» проект Компиляция c99 -Wall -Werror -pedantic -c hello.c c99 -Wall -Werror -pedantic -c buy.c c99 -Wall -Werror -pedantic -c main.c c99 -Wall -Werror -pedantic -c test.c Компоновка c99 -o greeting.exe hello.o buy.o main.o c99 -o test_greeting.exe hello.o buy.o test.o

№13 слайд
Граф зависимостей
Содержание слайда: Граф зависимостей

№14 слайд
Утилита make make утилита,
Содержание слайда: Утилита make make — утилита, автоматизирующая процесс преобразования файлов из одной формы в другую. GNU Make (рассматривается далее) BSD Make Microsoft Make (nmake)

№15 слайд
Утилита make принципы работы
Содержание слайда: Утилита make: принципы работы Необходимо создать так называемый сценарий сборки проекта (make-файл). Этот файл описывает отношения между файлами программы; содержит команды для обновления каждого файла. Утилита make использует информацию из make-файла и время последнего изменения каждого файла для того, чтобы решить, какие файлы нужно обновить. Утилита make предполагает, что по умолчанию сценарий сборки называется makefile или Makefile.

№16 слайд
Сценарий сборки проекта цель
Содержание слайда: Сценарий сборки проекта цель: зависимость_1 ... зависимость_n [tab]команда_1 [tab]команда_2 ... [tab]команда_m

№17 слайд
Простой сценарий сборки
Содержание слайда: Простой сценарий сборки greeting.exe : hello.o buy.o main.o gcc -o greeting.exe hello.o buy.o main.o test_greeting.exe : hello.o buy.o test.o gcc -o test_greeting.exe hello.o buy.o test.o hello.o : hello.c hello.h gcc -std=c99 -Wall -Werror -pedantic -c hello.c buy.o : buy.c buy.h gcc -std=c99 -Wall -Werror -pedantic -c buy.c main.o : main.c hello.h buy.h gcc -std=c99 -Wall -Werror -pedantic -c main.c test.o : test.c hello.h buy.h gcc -std=c99 -Wall -Werror -pedantic -c test.c clean : rm *.o *.exe

№18 слайд
Использование переменных и
Содержание слайда: Использование переменных и комментариев Строки, которые начинаются с символа #, являются комментариями. Определить переменную в make-файле можно следующим образом: VAR_NAME := value Чтобы получить значение переменной, необходимо ее имя заключить в круглые скобки и перед ними поставить символ '$'. $(VAR_NAME)

№19 слайд
Использование переменных и
Содержание слайда: Использование переменных и комментариев # Компилятор CC := gcc # Опции компиляции CFLAGS := -std=c99 -Wall -Werror -pedantic # Общие объектные файлы OBJS := hello.o buy.o greeting.exe : $(OBJS) main.o $(CC) -o greeting.exe $(OBJS) main.o test_greeting.exe : $(OBJS) test.o $(CC) -o test_greeting.exe $(OBJS) test.o

№20 слайд
Использование переменных и
Содержание слайда: Использование переменных и комментариев hello.o : hello.c hello.h $(CC) $(CFLAGS) -c hello.c buy.o : buy.c buy.h $(CC) $(CFLAGS) -c buy.c main.o : main.c hello.h buy.h $(CC) $(CFLAGS) -c main.c test.o : test.c hello.h buy.h $(CC) $(CFLAGS) -c test.c clean : $(RM) *.o *.exe

№21 слайд
Автоматические переменные
Содержание слайда: Автоматические переменные Автоматические переменные - это переменные со специальными именами, которые «автоматически» принимают определенные значения перед выполнением описанных в правиле команд. Переменная "$^" означает "список зависимостей". Переменная "$@" означает "имя цели". Переменная "$<" является просто первой зависимостью. Было greeting.exe : $(OBJS) main.o gcc -o greeting.exe $(OBJS) main.o Стало greeting.exe : $(OBJS) main.o gcc $^ -o $@

№22 слайд
Автоматические переменные
Содержание слайда: Автоматические переменные # Компилятор CC := gcc # Опции компиляции CFLAGS := -std=c99 -Wall -Werror -pedantic # Общие объектные файлы OBJS := hello.o buy.o greeting.exe : $(OBJS) main.o $(CC) $^ -o $@ test_greeting.exe : $(OBJS) test.o $(CC) $^ -o $@

№23 слайд
Автоматические переменные
Содержание слайда: Автоматические переменные hello.o : hello.c hello.h $(CC) $(CFLAGS) -c $< buy.o : buy.c buy.h $(CC) $(CFLAGS) -c $< main.o : main.c hello.h buy.h $(CC) $(CFLAGS) -c $< test.o : test.c hello.h buy.h $(CC) $(CFLAGS) -c $< clean : $(RM) *.o *.exe

№24 слайд
Шаблонные правила .расш
Содержание слайда: Шаблонные правила %.расш_файлов_целей : %.расш_файлов_зав [tab]команда_1 [tab]команда_2 ... [tab]команда_m

№25 слайд
Шаблонные правила Компилятор
Содержание слайда: Шаблонные правила # Компилятор CC := gcc # Опции компиляции CFLAGS := -std=c99 -Wall -Werror -pedantic # Общие объектные файлы OBJS := hello.o buy.o greeting.exe : $(OBJS) main.o $(CC) $^ -o $@ test_greeting.exe : $(OBJS) test.o $(CC) $^ -o $@ %.o : %.c *.h $(CC) $(CFLAGS) -c $< clean : $(RM) *.o *.exe

№26 слайд
Сборка программы с разными
Содержание слайда: Сборка программы с разными параметрами компиляции # Компилятор CC := gcc # Опции компиляции CFLAGS := -std=c99 -Wall -Werror -pedantic # Общие объектные файлы OBJS := hello.o buy.o ifeq ($(mode), debug) # Отладочная сборка: добавим генерацию отладочной информации CFLAGS += -g3 endif ifeq ($(mode), release)

№27 слайд
Сборка программы с разными
Содержание слайда: Сборка программы с разными параметрами компиляции # Финальная сборка: исключим отладочную информацию и утверждения (asserts) CFLAGS += -DNDEBUG -g0 endif greeting.exe : $(OBJS) main.o $(CC) $^ -o $@ test_greeting.exe : $(OBJS) test.o $(CC) $^ -o $@ %.o : %.c *.h $(CC) $(CFLAGS) -c $< clean : $(RM) *.o *.exe

№28 слайд
Литература Черновик стандарта
Содержание слайда: Литература Черновик стандарта C99 Б. Керниган, Д. Ритчи Язык программирования С Артур Гриффитс, GCC: Настольная книга пользователей, программистов и системных администраторов. Различные циклы уроков (tutorials) по make (например, http://habrahabr.ru/post/211751)

Скачать все slide презентации Многофайловый проект. Автоматизация сборки проекта одним архивом: