русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Сборочные процедуры как средство управления ПО


Дата добавления: 2014-11-27; просмотров: 515; Нарушение авторских прав


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

Рисунок 3.16. Распространение ПО в форме исходных текстов

 

Make-файл определённого вида к настоящему времени является стандартом де-факто для большинства открытых проектов. С его помощью можно получить готовую к использованию программу из исходных текстов на компилируемом языке (как правило это C или C++). Обычно в make-файле определяются специальные цели для задач системного администрирования: install и uninstall, которые выполняют стандартные действия — соответственно установку и удаление скомпилированной программы из системы. При этом всё, что требуется от администратора для компиляции из исходных текстов и установки программы, это выполнить следующую последовательность команд:

Пример 3.5. Сборка и установка программы с помощью make

desktop src # tar -xzf a-program-1.00.tar.gzdesktop src # cd a-program-1.00desktop a-program-1.00 # make... происходит компиляция и сборка программы ...desktop a-program-1.00 # make install... программа устанавливается в систему ...


Естественно, процесс компиляции программы может занять достаточно длительное время, что делает этот способ установки ПО довольно долгим и не самым удобным. Кроме того, в системе должны присутствовать компилятор и все библиотеки, необходимые для сборки программы, не говоря уже о том, что в случае любых неожиданностей для компиляции программы может потребоваться высокая квалификация администратора.



С увеличением числа программ в системе (любая современная система — это тысячи компонентов) такой подход к управлению ПО стал практически малоприменимым, как исключительно затратный для системного администратора.

Дополнительный источник осложнений представляют собой зависимости программ. Так, крупные современные проекты могут использовать десятки других программ и библиотек, например, веб-сервер apache зависит от десятка других проектов, начиная от базовой системной библиотеки libc и заканчивая библиотекой expat для синтаксического анализа XML. Так как большинство проектов развивается независимо друг от друга и выпускает новые версии довольно часто, отслеживание зависимостей и корректное обновление программ могут превратиться в сущий ад для администратора.

Дальнейшее упрощение задач администратора в отношении отслеживания зависимостей и различий в реализации разных UNIX-систем в рамках той же модели — посредством сборочных процедур — предоставляют программы пакета autotools: automake и autoconf. Эти средства по существу реализуют адаптивные сборочные процедуры, которые способны настраиваться в зависимости от особенностей сборочной среды. Они позволяют на основе анализа присутствующих в системе программ и библиотек, особенностей операционной системы и аппаратной архитектуры автоматически получить make-файл, по которому будет произведена компиляция и установка программы.



<== предыдущая лекция | следующая лекция ==>
В двоичной форме или в исходных текстах? | Дистрибутивы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.418 сек.