Как собрать NetBSD-current
Благодаря системе автоматической сборки , в NetBSD, вы можете легко собрать новый релиз из текущих CVS исходников. Я покажу вам шаг за шагом, как собрать загрузочный, установочный CD-ROM для платформы i386. Вы должны иметь рабочую NetBSD систему и подкючение к интернету.
Содержание этого howto.
Требования к пространству диска.
Получение исходников из CVS репозитария.
Сборка рабочего инструментария.
Сборка релиза.
Создание ISO образа.
Запись образа.
Дополнительная информация.
Требования к дисковому пространству.
Вам потребуется минимум 5.1 Gb дискового пространства для сборки полного релиза. Временно, вам необходимо 1.6 Gb для исходников src и xsrc. Также 2.4 Gb объектных файлов будут перемещены в директорию obj после сборки релиза.
Получение исходников из CVS репозитария.
Создайте поддиректории src, xsrc и objdir, как пользователь root, в директории /usr
# cd /usr
# mkdir src xsrc objdir
Также, мы создадим следующие поддиректории в /usr: tooldir, releasedir, destdir потому что мы хотим иметь чистую сборку и выделить эти директории из директории src, в которой обычно собираются релизы.
# mkdir tooldir releasedir destdir
Сменим владельца этих директорий:
# chown jens src/ xsrc/ objdir/ tooldir/ releasedir/ destdir/
Следущие шаги могут быть выполнены обычным пользователем:
# logout
$
Устанавливаем переменные среды CVSROOT: (Для этого, пожалуйста, выберете зеркало ближайшее к вам)
В случае если вы пользуетесь csh:
% setenv CVSROOT anoncvs@anoncvs3.de.NetBSD.org:/cvsroot
Если же вы пользуетесь Борн совместимыми оболочками (sh, ksh, zsh, bash...):
$ export CVSROOT=anoncvs@anoncvs3.de.NetBSD.org:/cvsroot
Устанавливаем переменную окружения CVS_RSH:
$ export CVS_RSH=ssh
Для src директории необходимо 1500 Mb дискового пространства и 579 MB для директории xsrc.
Теперь проверим исходники current ветки.
$ cvs checkout -PA src
$ cvs checkout -PA xsrc
Или вы можете проверить конкретный релиз
$ cvs checkout -rnetbsd-3-0 -PA src
$ cvs checkout -rnetbsd-3-0 -PA xsrc
Построение рабочего инструментария.
Инструментарий содержит программное обеспечение которое необходимо для сборки NetBSD, такой как GNU C-компилятор и другие средства. Это дает нам уверенность в том, что NetBSD может быть построена на большинстве Unix™ систем. Вы можете опустить этот шаг, если вы хотите построить новый релиз, потому что релиз всегда включает средства для сборки.
$ cd /usr/src
$ ./build.sh -T ../tooldir -D ../destdir -R ../releasedir -O ../objdir -U tools
build.sh started: Sat Jan 22 21:34:56 CET 2005
No /usr/tools/bin/nbmake, needs building.
Bootstrapping nbmake
MACHINE: i386
MACHINE_ARCH: i386
TOOLDIR path: /usr/tooldir
DESTDIR path: /usr/destdir
RELEASEDIR path: /usr/releasedir
Created /usr/tools/bin/nbmake
makewrapper: /usr/tools/bin/nbmake-i386
Updated /usr/src/obj/tooldir/bin/nbmake-i386
Tools built to /usr/src/obj/tooldir
build.sh started: Sat Jan 22 21:34:56 CET 2005
build.sh ended: Sat Jan 22 21:41:26 CET 2005
Сборка релиза
Аргументы обрабатываемые скриптом build.sh могут буть найдены в файле
В этом примере:
Мы собираем релиз, как обычный пользователь (не root): -U
Мы собираем исходники X11R6 (Xservers): -x
Мы используем раздельные директории: -T, -D, -R, -O, -X
Мы перемещаем содержимое директорий tooldir и destdir до сборки: -r
Мы собираем релиз: release
$ ./build.sh -T ../tooldir -D ../destdir -R ../releasedir -O ../objdir -X ../xsrc -U -x -r release
Сам процесс занимает как минимум два часа на сервере класса high-end, а обычно намного больше, в зависимости от вычислительной мощности вашего компьютера.
build.sh started: Sat Jan 22 21:50:47 CET 2005
No nonexistent/bin/nbmake, needs building.
Bootstrapping nbmake
MACHINE: i386
MACHINE_ARCH: i386
TOOLDIR path: /usr/src/tooldir
DESTDIR path: /usr/src/destdir
RELEASEDIR path: /usr/src/releasedir
Created /usr/src/tooldir/bin/nbmake
makewrapper: /usr/src/tooldir/bin/nbmake-i386
Updated /usr/src/tooldir/bin/nbmake-i386
Successful make release
build.sh started: Sat Jan 22 21:50:47 CET 2005
build.sh ended: Sun Jan 23 01:20:43 CET 2005
Если сборка завершится неудачно, в связи с нехваткой места на установочных дискетах, вам будет полезно прочесть: Сборка установочных наборов, когда вы не можете собрать установочные дискеты.
Создание ISO-образа
Для создания ISO-образа только добавьте соответствующую опцию iso-image
$ ./build.sh
Результирующий ISO-образа будет создан в директории relasedir/platform/installation/cdrom/
При помощи этой опции будет создан ISO-образ только на платформах которые могут загружаться с этого типа носителя .
Прожиг образа
# cdrecord -dev=/dev/rcd0d -data -pad -v NetBSD-install.iso
Дополнительная информация
Автор Zafer
Перевод rmx
- Страница для печати
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- 3898 просмотра