<sect1 id="basic-features">
<title
>Основні можливості &kdesrc-build;</title>

<sect2 id="using-qt">
<title
>Підтримка qt</title>
<para
>&kdesrc-build; підтримує зручне для користувачів збирання набору інструментів &Qt;, який використовується у програмному забезпеченні &kde;. Підтримку забезпечує обробка особливого модуля з назвою qt.</para>

<note
><para
>&Qt; розробляється у окремому сховищі, не пов’язаному з програмним забезпеченням &kde;. Це сховище розташоване за адресою <ulink url="http://code.qt.io/cgit/qt/"
>http://code.qt.io/cgit/qt/</ulink
>.</para
></note>

<para
>Щоб зібрати &Qt;, вам слід переконатися, що параметр <link linkend="conf-qt-install-dir"
>qt-install-dir</link
> вказує на каталог, куди б ви бажали встановити &Qt;, як це описано у розділі <xref linkend="configure-data"/>.</para>

<para
>Після цього вам слід переконатися, що модуль qt додано до вашого файла <filename
>.kdesrc-buildrc</filename
> перед будь-якими іншими модулями у цьому файлі. Якщо ви користуєтеся зразком файла налаштувань, ви можете просто зняти позначку коментаря з запису модуля qt.</para>

<para
>Тепер вам слід перевірити, чи встановлено належним чином параметри <link linkend="conf-repository"
>repository</link
> і <link linkend="conf-branch"
>branch</link
>:</para>

<orderedlist>
<listitem
><para
>Перший варіант полягає у збиранні &Qt; на основі коду з дзеркала зі сховищ коду &kde; (ніяких змін до коду не внесено, це просто клон офіційного сховища). Ми рекомендуємо цей варіант через можливі проблеми з клонуванням модуля &Qt; з офіційного сховища повністю.</para>

<para
>Ви можете встановити параметр <option
>repository</option
> для модуля qt у значення <userinput
>kde:qt</userinput
>, щоб скористатися цим параметром.</para>
</listitem>

<listitem
><para
>Іншим варіантом буде збирання стандартного &Qt;. У такому разі слід встановити значення параметра <option
>repository</option
> рівним <userinput
>git://gitorious.org/qt/qt.git</userinput
>. Зауважте, що у вас можуть виникнути проблеми з початковим клонуванням &Qt; зі цього сховища.</para
></listitem>
</orderedlist>

<para
>У обох випадках параметр branch слід встановити у значення <userinput
>master</userinput
> (якщо ви не маєте наміру спеціально зібрати якусь іншу гілку).</para>

</sect2>

<sect2 id="kdesrc-build-std-flags">
<title
>Стандартні прапорці, які додаються &kdesrc-build;</title>
<para
>Варто зауважити, що цей розділ не стосується модулів, для яких налаштовано нетиповий набір інструментів, наприклад, за допомогою <link linkend="conf-cmake-toolchain"
>cmake-toolchain</link
>.</para>

<para
>Щоб зекономити вам час, &kdesrc-build; додасть деякі з стандартних шляхів до вашого середовища: </para>

<itemizedlist>
<listitem
><para
>Шлях до бібліотек &kde; і &Qt; автоматично додається до змінної середовища <envar
>LD_LIBRARY_PATH</envar
>. Отже, вам не потрібно змінювати &libpath;, щоб включити відповідні каталоги. </para
></listitem>

<listitem
><para
>Шлях до програм підтримки розробки &kde; і &Qt; буде автоматично додано до змінної середовища <envar
>PATH</envar
>. Отже, вам не потрібно змінювати &binpath;, щоб включити відповідна каталоги. </para
></listitem>

<listitem
><para
>Шлях до програми <application
>pkg-config</application
> &kde; буде автоматично додано до <envar
>PKG_CONFIG_PATH</envar
>. Отже, вам не потрібно використовувати &set-env; для додавання відповідних каталогів. </para
></listitem>

</itemizedlist>

</sect2>

<sect2 id="build-priority">
<title
>Зміна пріоритету збирання &kdesrc-build;</title>
<para
>У сучасних операційних системах ви можете запускати програми з різним рівнем пріоритетності, це зокрема можна робити у &Linux; і &BSD;. Система розподілятиме час процесора між різними програмами відповідно до того, наскільки пріоритетними є ці програми. </para>

<para
>Зазвичай, &kdesrc-build; надає собі низький пріоритет так, щоб решта програм вашої системи не відчули змін і могли виконуватися у звичному режимі. Таким чином, &kdesrc-build; використовуватиме лише залишковий час процесора. </para>

<para
>Але &kdesrc-build; підтримуватиме достатньо великий рівень пріоритету, а отже скрипт виконуватиметься з вищим пріоритетом, ніж пакетні процеси і програми з надання процесорного часу, на зразок <ulink url="http://setiathome.ssl.berkeley.edu/"
>Seti@Home</ulink
>. </para>

<para
>Ви можете змінити рівень пріоритетності &kdesrc-build; на вищий (або нижчий), — для цього вам достатньо змінити значення параметр &niceness; у <link linkend="configure-data"
>файлі налаштувань</link
>. Значення параметра &niceness; керує тим, наскільки <quote
>поблажливим</quote
> &kdesrc-build; буде до інших програм. Іншими словами, встановлення більшого значення параметра &niceness; надасть &kdesrc-build; менший пріоритет. Отже, щоб надати &kdesrc-build; вищий пріоритет, зменшіть значення &niceness; (і навпаки). Значеннями параметра &niceness; можуть бути цілі числа від 0 (ніяких компромісів, — найвищий пріоритет) до 20 (найкомпромісніше виконання, — найнижчий пріоритет).і числа від 0 (ніяких компромісів, — найвищий пріоритет) до 20 (найкомпромісніше виконання, — найнижчий пріоритет).</para>

<para
>Крім того, ви можете тимчасово змінити пріоритет &kdesrc-build; за допомогою <link linkend="cmdline"
>параметра командного рядка</link
> &cmd-nice;. Значення цього параметра таке саме, як і значення &niceness;.</para>

<note
><para
>Деякі з програм, які виконуються від імені адміністративного користувача, можна виконувати з від’ємним рівнем nice, такі програми матимуть ще вищий рівень пріоритетності. Встановлювати від’ємного (або навіть нульового) значення &niceness; для &kdesrc-build; не варто, подібні значення не зможуть значно пришвидшити роботу програми, але значно сповільнять виконання інших завдань системи, які будуть вам потрібні. </para
></note>

<informalexample>
<para
>Щоб запустити &kdesrc-build; з пріоритетом nice 15 (пріоритетом, нижчим за звичайний), виконайте команду:</para>

<screen
><prompt
>&percnt;</prompt
> <userinput
><command
>kdesrc-build</command
> <option
>--nice=<replaceable
>15</replaceable
></option
></userinput
>
</screen>

<para
>Крім того, ви можете змінити <link linkend="configure-data"
>файл налаштувань</link
>, щоб зробити зміни сталими:</para>

<screen
>&niceness; <replaceable
>15</replaceable
>
</screen>
</informalexample>

<tip>
<para
>За допомогою параметра <link linkend="conf-niceness"
>niceness</link
> можна керувати лише використанням процесорів комп’ютера. Іншим важливим фактором, який впливає на швидкодію системи, є степінь використання програмою каналів вводу і виводу даних (<acronym
>I/O</acronym
>). З метою керування використанням <acronym
>I/O</acronym
> програмою у сучасних операційних системах &Linux; передбачено підтримку подібного до nice інструменту з назвою <application
>ionice</application
>. &kdesrc-build; підтримує роботу з <application
>ionice</application
> (але лише у режимі «увімкнути-вимкнути») за допомогою параметра <link linkend="conf-use-idle-io-priority"
>use-idle-io-priority</link
>, починаючи з версії &kdesrc-build; 1.12. </para>
</tip>

</sect2>

<sect2 id="root-installation">
<title
>Встановлення від імені суперкористувача</title>
<para
>Ймовірно, у вас може виникнути потреба у запуску &kdesrc-build; встановлення з правами доступу адміністративного користувача. Така потреба може виникнути під час загальносистемного встановлення, яке, втім, не рекомендується авторами програми. Ця можливість також корисна і під час рекомендованого збирання для окремого користувача &kde;. Причиною цього є те, що деякі у деяких модулях (особливо у модулі kdebase) програми мають встановлюватися з підвищеними правами доступу до ресурсів системи. Ці програми не зможуть отримати потрібних дозволів, якщо ви не встановите їх з підвищеними правами. </para>

<para
>Ви можете просто запустити &kdesrc-build; від імені адміністративного користувача, але ми не рекомендуємо вам цього робити, оскільки скрипт не було достатньо випробувано запуском у такому режимі. Хоча запуск програми у такий спосіб і не повинен призвести до шкідливих наслідків, вам краще за можливості уникати запуску скрипту від імені адміністративного користувача.</para>

<para
>Для надання скрипту додаткових прав доступу у &kdesrc-build; передбачено параметр &make-install-prefix;. Ви можете скористатися цим параметром для того, щоб вказати команду, яка використовується для встановлення від імені іншого користувача. Рекомендуємо вам скористатися для цього програмою &sudo;, ця програма надає змогу виконувати команди від імені адміністративного користувача. </para>

<informalexample>
<para
>Наприклад, щоб встановити всі модулі за допомогою &sudo;, ви можете вказати щось таке:</para>

<screen
>global
  &make-install-prefix; <replaceable
>sudo</replaceable>
  # Інші параметри
end global
</screen>

<para
>Для того, щоб скористатися &make-install-prefix; для окремого модуля, вкажіть у файлі налаштувань рядки на зразок: </para>

<screen
>module <replaceable
>назва-якогось-модуля</replaceable>
  &make-install-prefix; <replaceable
>sudo</replaceable>
end module
</screen>
</informalexample>

</sect2>

<sect2 id="build-progress">
<title
>Показ поступу збирання модуля</title>
<para
>Ця можливість завжди доступна, за можливості скрипт автоматично вмикає її. Вона надає вам змогу слідкувати за поступом збирання модуля, а отже ви знатимете скільки часу залишилося до завершення збирання модуля. </para>

</sect2>

</sect1>
