Процесс построения пакетов
Пред. |  | След.

# 3. Подготовка ограниченной среды сборки

Пакеты собираются в ограниченной (`chroot`) среде, которая разворачивается скриптом `portbuild` из архива ``${arch}`/`${branch}`/tarballs/bindist.tar`. Этот архив создается при помощи скрипта `mkbindist`, конфигурация которого описывается файлом ``${arch}`/`${branch}`/mkbindist.conf`.

Скрипт должен запускаться с правами пользователя `root` и следующими параметрами:

    /var/portbuild# scripts/mkbindist ${arch} ${branch}

При указании в файле `mkbindist.conf` параметра `ftp=1` с адреса ftp://`${ftpserver}`/`${ftpurl}`/`${rel}` будет загружен предварительно собранный релиз. Если указано `ftp=0` и `buildworld=1`, скрипт `mkbindist` выполнит `makeworld` для того, чтобы собрать релиз на месте [`XXX` Эта часть в настоящее время не работает].

Если оба параметра равны нулю (`ftp=0` и `buildworld=0`), то `mkbindist` будет использовать существующее на момент запуска состояние дерева `${worlddir}` для создания `bindist.tar`. На практике это означает, что вы должны предварительно установить систему в ${worlddir}, что обычно делается при помощи скрипта `makeworld`:

    /var/portbuild# scripts/makeworld ${arch} ${branch} [-nocvs]

Эта команда соберет систему на базе исходных текстов в дереве ``${arch}`/`${branch}`/src` и установит ее в `${worlddir}`. Исходные тексты будут обновлены, если не указан параметр `-nocvs`.

Содержимое архива `bindist.tar` будет распаковано на каждом клиенте в период загрузки, а также на старте каждого прохода скрипта `dopackages`.

Пред. | Начало | След.
Конфигурация машин-клиентов |  | Запуск сборки

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.