Интернет, компьютеры, софт и прочий Hi-Tech | |||||
Избранные докиМетки (все метки)hi tech, internet, it, интернет, информационные технологии, ит, по, программное обеспечение, сайт, софт
Подписаться через RSS2Email.ru
Дополнительнооптимизация, сайт, мониторы, движок, Битрикс, хостинг, сайты, мобильные, электроника, видеокарта |
Copyright (C) 1998 Cygnus Solutions Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation. Система конфигурирования и сборки GNU
ВведениеЭтот документ описывает систему конфигурирования и сборки GNU. Он описывает, как объединяются autoconf, automake, libtool и make. Кроме того, он включает в себя обсуждение старой системы конфигурирования Cygnus. Этот документ не описывает в деталях, как использовать те или иные утилиты. Эти описания читайте в соответствующих мануалах по ним. Зато здесь описывается, какие файлы должен написать разработчик, какие файлы генерируются машиной, как они генерируются и где искать решения известных общих проблем. Этот документ написан на основании нескольких источников, включающих мануал по autoconf Дэвида Маккензи, мануал по automake Дэвида Маккензи и Тома Тромей, мануал по libtool Гордона Матзигкейта и мануал по конфигурированию Cygnus К. Ричарда Пикслея. ЗадачиСистема конфигурирования и сборки GNU используется для решения следующих двух задач: Первая — это упрощение разработки портируемых программ. Система позволяет разработчику сконцентрироваться на написании программы, упрощает учет множества деталей при портировании программы между системами Unix и Windows и позволяет разработчику описывать сборку программы с помощью более простых правил, чем те, которые составляют Makefile-ы. Вторая — это упрощение сборки программ, распространяемых в исходных кодах. Все программы собираются в ходе простого, стандартного, двух-шагового процесса. Сборщик программ не нуждается в инсталляции каких-либо специальных утилит в процессе сборки программ. ИнструментыСистема конфигурирования и сборки GNU состоит из нескольких различных утилит. Разработчики программ должны собрать и инсталлировать все эти утилиты:
Люди, которым нужно всего-лишь собирать программы из распространяемых пакетов исходников, не нуждаются в каких-то специальных утилитах помимо юниксового shell, программы make и компилятора C. ИсторияЗдесь излагается очень краткая и, возможно, неточная история. В 1980-х стало быстро увеличиваться число вариантов Unix и встала проблема
того, что жестко написанные программы не работали на всех вариантах. Эта
проблема часто решалась использованием Разработки на пути решения проблемы велись, к 1992 году, как минимум в трех различных направлениях:
Программа Metaconfig использовалась для Perl и нескольких других программ. Она была частью пакета Dist. Я не знаю, когда она начала разрабатываться. В 1994 Дэвид Маккензи с помощниками модифицировал autoconf, включив в него все возможности конфигуратора Cygnus. С тех пор начался медленный но неуклонный процесс переноса программ GNU с конфигуратора Cygnus на autoconf. Соответственно был изменён gcc, из которого был исключён скрипт конфигурирования gcc. GNU autoconf регулярно поддерживался до конца 1996 года. На момент написания этого документа в июне 1998, он не имеет публичного майнтейнера. Большинство программ собираются с помощью программы make, которая требует от разработчика написания Makefile-ов, описывающих как собирать программы. С тех пор как программы стали стали собираться почти одинаковым способом, Makefile-ы стали часто дублироваться. Система X Window собирается с помощью утилиты imake, которая использует базу данных правил для исключения дублирования. Однако, сборка утилит, которые разрабатывались с помощью imake, требует чтобы сборщику была доступна инсталлированная imake, что противоречит одной из целей системы GNU. Новый BSD make содержит стандартную библиотеку фрагментов Makefile, которая позволяет разработчикам писать очень простые Makefile-ы. Однако, это требует, чтобы сборщик инсталлировал новую программу BSD make. В 1994 Дэвид Маккензи написал первую версию automake, которая позволяла написание простых сборочных описаний, которые затем могли конвертироваться в Makefile, пригодный для использования со стандартной программой make. В 1995 Том Тромей завершил переписывание automake на Perl и продолжил его улучшение. Около 1995 года некоторые различные пакеты свободных сборочных библиотек поддерживали сборку разделяемых библиотек для различных платформ. Однако единого подхода к этому несуществовало. В начале 1996 года Гордон Матзигкейт начал работать над libtool, которая предоставляла стандартизованный подход к сборке разделяемых библиотек. С самого начала этот инструмент был интегрирован в automake. Разработка automake и libtool координируется проектом GNITS, — группой майнтейнеров GNU, которые проектируют стандартизованные утилиты для поддержки стандартов кодирования GNU. СборкаБольшинство читателей этого документа уже, наверное, знают как собирать
утилиты посредством запуска Обычно, сборка нужной утилиты проста и заключается в запуске
Для того, чтобы использовать объектную директорию, отличную от директории с
исходниками, вы должны использовать GNU-версию
Если у вас нет GNU После запуска Для инсталляции этой утилиты запустите В настоящее время info-файлы собираются и устанавливаются в дереве Cygnus
двумя различными шагами. Чтобы собрать их запустите
Все скрипты Единственные типовые опции, которые вам, возможно, понадобятся, — это опции `--prefix' и `--exec-prefix'. Они используются для указания инсталляционной директории. Директория, названная посредством опции Директория, которая названа в качестве По умолчанию значением Для релизов Cygnus используется соглашение о том, что в качестве опции
Не используйте какие-либо другие исходники или другую директорию в качестве инсталляционной. Это обязательно приведет к путанице.
Перевод: Дмитрий Скоробогатов, 23.11.2011. Предыдущие публикации: Последнее редактирование: 2011-11-23 06:54:48 Метки материала: gnu, система конфигурирования, система конфигурирования и сборки, компиляция, проект gnu, по, бесплатные программы, бесплатное по, софт, разработка по, soft, программное обеспечение, software, спо, документация для программиста, программное обеспечение по Оставьте, пожалуйста, свой комментарий к публикации |
||||
© 2007-2012, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.