|
|
Здесь приведено руководство по использованию системы сборки Owl из
исходных текстов. Предполагается, что вы уже прочитали CONCEPTS - если
это не так, настоятельно рекомендуем проделать это перед чтением данного
описания.
Настройка /usr/src/world.Изначально система сконфигурирована для использования каталога /usr/src/world (параметр HOME= в buildworld.conf и installworld.conf). Рекомендуется использовать значение по умолчанию и либо действительно поместить файлы в /usr/src/world, либо создать ссылку (symlink) если /usr/src не находится на подходящем устройстве (требования - ниже). При сборке на Owl, каталог уже создан. В противном случае вам следует создать этот каталог, создать псевдопользователя "build", желательно с UID 151 и GID 150 ("sources"), и сделать этого пользователя владельцем каталога /usr/src/world. Поместите дерево CVS в /usr/src/world. Простейший способ сделать это - распаковать туда содержимое native.tar.gz, доступного по FTP. Появится каталог native и символьная ссылка Makefile. Для сборки Owl из исходных текстов также поместите в /usr/src/world каталог sources. Если вы еще не используете Owl, и хотите установить готовые (бинарные) пакеты, создайте каталог /usr/src/world/RPMS и поместите туда набор пакетов для используемой вами архитектуры. Обратите внимание, что для этой операции вам также понадобится дерево CVS.
Требования.Чтобы (пере-)собрать Owl из исходных текстов, вам нужно: не менее 1 GB свободного дискового пространства под /usr/src/world для использования в процессе сборки; не менее 1 GB виртуальной памяти; несколько часов процессорного времени на современном компьютере. И, разумеется, вам следует использовать Owl. Сборка под управлением других GNU/*/Linux систем возможна, но не является штатной операцией, так как сводится к постепенному превращению системы в Owl посредством неоднократного запуска "make buildworld" и "make installworld". Ниже приведен ряд значений времени сборки Owl 3.0 (часы:минуты), чтобы вы могли примерно представить себе, чего следует ожидать:
Core 2 Duo E6550, 2.33 GHz, 2 GB 0:55 Указанные значения соответствуют умалчиваемому набору тестов (строка "RUN_TESTS=" в buildworld.conf закомментирована или отсутствует, либо значение этой переменной - пустая строка). Время сборки для i686 и x86_64 примерно одинаково (если компьютер поддерживает оба варианта). Для Owl 2.0:
UltraSparc IIi, 400 MHz, 256 MB 10:00 Alpha 21164PC (164SX-1MB), 533 MHz, 128 MB 14:00 (Да, gcc для Alpha такая медленная и прожорливая штука.) Время сборки может изменяться по мере добавления дополнительных пакетов и обновления уже имеющегося программного обеспечения до новых версий.
(Пере-)сборка Owl.Как пользователь "build", перейдите в /usr/src/world и наберите:
make clean && make buildworld При использовании стандартного buildworld.conf, пакеты будут собраны для самой старой версии вашей архитектуры (см. файл ARCHITECTURES), при этом будет предпринята попытка использовать все процессоры (если их 2 и более). buildworld.conf (как и другие файлы *.conf) могут быть скорректированы по вашим требованиям - для этого следует скопировать их из native/Owl/build в /usr/src/world. Предварительно следует удалить соответствующие ссылки (symlink), если таковые были созданы ранее. Все пакеты собираются с использованием тех библиотек и утилит сборки, которые установлены в вашей системе. В случае значительных изменений этих библиотек и утилит может потребоваться неоднократный (как правило, достаточно 2 раз) запуск buildworld и installworld.
Установка готовых (бинарных) пакетов."make installworld" позволяет установить пакеты из /usr/src/world/RPMS как для использования в основной системе, так и в новом корневом каталоге по вашему выбору (параметр ROOT= в installworld.conf). По умолчанию все пакеты будут установлены в /owl. "make installworld" следует запускать с правами пользователя root.
(Пере-)сборка отдельных пакетов.Отдельные пакеты могут быть собраны или обновлены посредством команды "make PACKAGE=name", где "name" - название пакета. Для "чужих" пакетов (SRPM), собираемых с помощью системы сборки Owl, вам следует также указать в названии номер версии. $Owl: Owl/doc/ru/BUILD,v 1.21 2011/10/24 09:06:49 solar Exp $ |