Выставляю на всеобщее обозрение результат перевода hb-working-features.xml. Если замечаний никаких не будет, то завтра напишу в багзиллу.
----------------------------------------------
<?xml version='1.0' encoding='UTF-8'?> <!-- REV: 1.26 --> <!DOCTYPE sections SYSTEM "/dtd/book.dtd">
<!-- The content of this document is licensed under the CC-BY-SA license --> <!-- See http://creativecommons.org/licenses/by-sa/1.0 -->
<!-- $Header: /var/www/www.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-working-features.xml,v 1.26 2004/11/26 22:06:43 swift Exp $ -->
<sections>
<version>1.23</version> <date>2004-11-26</date>
<section> <title>Возможности Portage</title> <body>
<p> Portage имеет несколько дополнительных особенностей, которые делают ваш Gentoo-опыт ещё лучше. Многие из этих особенностей полагаются на некоторые программные инструментальные средства, которые улучшают работу, надежность, защиту, ... </p>
<p> Для включения и выключения некоторых функций Portage необходимо отредактировать в <path>/etc/make.conf</path> переменную <c>FEATURES</c>. В некоторых случаях необходимо установить дополнительные программные инструменты, которые требуются этим функциям. </p>
<p> Не все особенности, что поддерживаются в Portage, здесь перечислены. Для полного краткого обзора, пожалуйста, консультируйтесь по поводу <path>make.conf</path> в оперативной странице руководства (man page): </p>
<pre caption="Консультация по поводу make.conf в оперативной странице руководства (man page)">
$ <i>man make.conf</i>
</pre>
<p> Чтобы узнать, какие FEATURES являются, заданным по умолчанию набором, запустите <c>emerge info</c> и найдите переменную FEATURES или быстро просмотрите (grep): </p>
<pre caption="Обнаружение уже установленных FEATURES"> $ <i>emerge info | grep FEATURES</i> </pre>
</body> </section> <section> <title>Распределённое компилирование</title> <subsection> <title>Использование distcc</title> <body>
<p>
<c>distcc</c> - программа, для распределённой компиляции параллельно на
нескольких, не обязательно идентичных, машинах в сети. <c>distcc</c> клиент
посылает всю необходимую информацию доступным distcc серверам (на которых
выполняется <c>distccd</c>)>), так что они могут компилировать части исходного
текста для клиента. Сетевой результат - более быстрое время трансляции.
</p>
<p> Вы можете найти подробную информацию о <c>distcc</c> (и как сделать так, чтобы это работало с Gentoo) в нашей <uri link="/doc/en/distcc.xml">Gentoo Distcc Документации</uri>. </p>
</body> </subsection> <subsection> <title>Установка distcc</title> <body>
<p> Distcc поставляется с графическим монитором, позволяющим контролировать задачи, которые отсылает ваш компьютер для компиляции. Если вы используете Gnome, тогда добавьте 'gnome' к переменной USE. Однако, если вы не пользуетесь Gnome, но желаете пользоваться монитором, тогда добавьте 'gtk' к переменной USE. </p>
<pre caption="Установка distcc"> # <i>emerge distcc</i> </pre>
</body> </subsection> <subsection> <title>Активизация поддержки Portage</title> <body>
<p>
Добавьте <c>distcc</c> к переменной FEATURES внутри <path>/etc/make.conf</path>.
Затем, отредактируйте переменную MAKEOPTS, как вам нравится. Дополните её
директивой "-jX", где X число центральных процессоров на которых
работает <c>distccd</c> (включая текущий компьютер) плюс один, но вы можете
получить лучшие результаты с другими числами.
</p>
<p> Теперь выполните <c>distcc-config</c> и введите список доступных distcc серверов. Для простого примера мы предполагаем, что доступные серверы DistCC - 192.168.1.102 (текущий компьютер), 192.168.1.103 и 192.168.1.104 (два "отдаленных" компьютера): </p>
<pre caption="Конфигурирование distcc, чтобы использовать три доступных distcc сервера">
# <i>distcc-config --set-hosts "192.168.1.102 192.168.1.103 192.168.1.104"</i>
</pre>
<p> Не забудьте также запустить демон <c>distccd</c>: </p>
<pre caption="Запуск демонов distccd"> # <i>rc-update add distccd default</i> # <i>/etc/init.d/distccd start</i> </pre>
</body> </subsection> </section> <section> <title>Кэширование компиляции</title> <subsection> <title>О ccache</title> <body>
<p>
<c>ccache</c> - это быстрый кэш компилятора. Когда вы компилируете программу,
он будет кэшировать промежуточные результаты так, чтобы, всякий раз, когда вы
перекомпилируете ту же самую программу, время компиляции сильно уменьшается.
В обычных компиляциях это может привести к 5 - 10 кратным сокращениям времени
компиляции.
</p>
<p> Если вы интересуетесь подробностями ccache, пожалуйста, посетите <uri link="http://ccache.samba.org">домашнюю страницу ccache</uri>. </p>
</body> </subsection> <subsection> <title>Установка ccache</title> <body>
<p> Для установки <c>ccache</c>, выполните <c>emerge ccache</c>: </p>
<pre caption="Установка ccache"> # <i>emerge ccache</i> </pre>
</body> </subsection> <subsection> <title>Активизация поддержки Portage</title> <body>
<p>
Откройте <path>/etc/make.conf</path> и добавьте <c>ccache</c> к переменной
FEATURES. Затем, добавьте новую переменную по имени CCACHE_SIZE, и установите
её равной "2G":
</p>
<pre caption="Редактирование CCACHE_SIZE в /etc/make.conf"> CCACHE_SIZE="2G" </pre>
<p> Для проверки функций ccache, выполните ccache, чтобы увидеть статистику: </p>
<pre caption="Просмотр статистики ccache"> # <i>ccache -s</i> </pre>
</body> </subsection> <subsection> <title>Использование ccache для не-Portage C компиляции</title> <body>
<p>
Если вы хотели бы использовать ccache для не-Portage компиляций, добавьте
<path>/usr/lib/ccache/bin</path> к началу вашей переменной PATH
(перед <path>/usr/bin</path>). Это может быть достигнуто, редактированием <path>/etc/profile</path>:
</p>
<pre caption="Редактирование /etc/profile">
PATH="<i>/usr/lib/ccache/bin</i>:${PATH}"
</pre></body> </subsection> </section> <section> <title>Поддержка бинарных пакетов</title> <subsection> <title>Создание предварительно подготовленных пакетов</title> <body>
<p>
Portage поддерживает инсталляцию предварительно подготовленных пакетов. Даже
при том, что Gentoo не предусматривает предварительно подготовленные пакеты
непосредственно (исключение для GRP снимков) Portage может создавать
полноценные предварительно подготовленные пакеты.
</p>
<p> Чтобы создать предварительно подготовленный пакет, вы можете использовать <c>quickpkg</c>, если пакет уже установлен на вашей системе, или <c>emerge</c> с параметрами <c>--buildpkg</c> или <c>--buildpkgonly</c>. </p>
<p>
Если хотите, чтобы Portage создавал предварительно подготовленные пакеты для
каждого отдельного пакета, который устанавливается, добавьте <c>buildpkg</c>
к переменной FEATURES.
</p>
<p>
Более расширенная поддержка для создания наборов предварительно подготовленных
пакетов может быть получено с <c>catalyst</c>. Для подробной информации
относительно катализатора, пожалуйста, прочитайте
<uri link="/proj/en/releng/catalyst/reference.xml">Справочное описание
катализатора </uri> и
<uri link="/proj/en/releng/catalyst/catalyst-howto.xml">Катализатор
ЧаВо(Howto)</uri>.
</p>
</body> </subsection> <subsection> <title>Установка предварительно подготовленных пакетов</title> <body>
<p> Хотя Gentoo не обеспечивает этого, вы можете создать центральный архив, где сохраните предварительно подготовленные пакеты. Если желаете использовать этот архив, то должны указать Portage с помощью переменной PORTAGE_BINHOST путь к нему. Например, если предварительно подготовленные пакеты находятся ftp://buildhost/gentoo: </p>
<pre caption="Установка PORTAGE_BINHOST в /etc/make.conf"> PORTAGE_BINHOST="ftp://buildhost/gentoo" </pre>
<p>
Когда вы хотите установить предварительно подготовленный пакет, добавьте опцию
<c>--getbinpkg</c> к команде emerge рядом с опцией <c>--usepkg</c>.
Формирователь сообщит emerge загрузить предварительно подготовленный пакет c
предварительно определённого сервера, в то время как последний запросит
emerge, сперва попытается установить предварительно подготовленный пакет
перед выборкой источников и их компилирования.
</p>
<p> Например, чтобы установить <c>gnumeric</c> из предварительно подготовленных пакетов: </p>
<pre caption="Установка предварительно подготовленного пакета gnumeric"> # <i>emerge --usepkg --getbinpkg gnumeric</i> </pre>
<p> Подробную информацию о параметрах установки предварительно подготовленных пакетов можно найти на странице руководства emerge: </p>
<pre caption="Чтение справки по emerge"> $ <i>man emerge</i> </pre>
</body> </subsection> </section> </sections>
----------------------------------------------
--
Best regards,
Aleksey A. Glazunov
www.klang.h1.ru
-- [email protected] mailing list
