<sect1 id="kdesrc-build-logging">
<title
>Запис журналів збирання &kdesrc-build;</title>

<sect2 id="logging-overview">
<title
>Огляд ведення журналу</title>

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

<sect3 id="log-directory-layout">
<title
>Компонування каталогів журналу</title>

<para
>Журнали завжди зберігаються у каталозі журналів. Адреса каталогу журналів визначається параметром <link linkend="conf-log-dir"
>log-dir</link
>, типовим значенням якого є <filename class="directory"
><symbol
>${source-dir}</symbol
>/log</filename
> (де <symbol
>${source-dir}</symbol
> є значенням параметра <link linkend="conf-source-dir"
>source-dir</link
>. Надалі у цьому розділі ми посилатимемося на значення відповідного параметра як <symbol
>${log-dir}</symbol
>).</para>

<para
>У каталозі <symbol
>${log-dir}</symbol
> буде створено набір каталогів, по одному на кожен запуск &kdesrc-build;. Кожен з каталогів матиме назву, що відбиватиме дату запуску скрипту і номер запуску. Наприклад, для другого запуску &kdesrc-build; 26 травня 2009 року буде створено каталог з назвою <filename
>2009-05-26-02</filename
>, де 2009-05-26 позначатиме дату а -02 порядковий номер запуску.</para>

<para
>Крім того, для зручності, &kdesrc-build; створить посилання на журнали останнього запуску з назвою <filename class="directory"
>latest</filename
>. Отже, журнали для найостаннішого запуску &kdesrc-build; мають завжди зберігатися у теці <filename class="directory"
><symbol
>${log-dir}</symbol
>/latest</filename
>. </para>

<para
>Крім того, кожен з каталогів запусків &kdesrc-build; сам містить набір каталогів, по одному на кожен модуль &kde;, який &kdesrc-build; намагається зібрати. У цьому каталозі також міститиметься файл <filename
>build-status</filename
>, за допомогою якого ви зможете визначити, які модулі було зібрано, а які зібрати не вдалося.</para>

<note
><para
>Якщо у самому модулі міститься підмодуль (наприклад extragear/multimedia, playground/utils, або KDE/kdelibs), йому відповідатиме власний підкаталог у каталозі журналу. Наприклад, журнали KDE/kdelibs після останнього запуску &kdesrc-build; можна буде знайти у <filename class="directory"
><symbol
>${log-dir}</symbol
>/latest/KDE/kdelibs</filename
>, а не у каталозі <filename class="directory"
><symbol
>${log-dir}</symbol
>/latest/kdelibs</filename
>. </para
></note>

<para
>У кожному з каталогів модулів ви знайдете набір файлів для кожної з дій, які виконуватиме &kdesrc-build;. Якщо &kdesrc-build; оновлює модуль, ви побачите файли з назвами на зразок <filename
>git-checkout-update.log</filename
> (отримання модуля або якщо відбувалося оновлення модуля, який вже було отримано). Якщо було запущено скрипт <command
>configure</command
>, слід очікувати появи журналу <filename
>configure.log</filename
> у цьому каталозі.</para>

<para
>Якщо сталася помилка, ви побачите пояснення її причину у одному з файлів. Щоб вам легше було знайти файл, у якому міститься помилка, &kdesrc-build; створить посилання з файла, що містить помилку (на зразок <filename
>build-1.log</filename
> на файл з назвою <filename
>error.log</filename
>).</para>

<para
>Результатом всього цього буде те, що ви знатимете чому не вдалося зібрати модуль після останнього запуску &kdesrc-build;, для цього вам слід для початку знайти файл з назвою <filename
><symbol
>${log-dir}</symbol
>/latest/<replaceable
>назва модуля</replaceable
>/error.log</filename
>. </para>

<tip
><para
>Якщо файл <filename
>error.log</filename
> є порожнім (особливо після встановлення), ймовірно, жодних помилок не сталося. Деякі з інструментів, які використовуються системою збирання &kde;, іноді помилково повідомляють про помилку, коли насправді помилок не сталося.</para>

<para
>Крім того, деякі з команд уникатимуть переспрямування виведення даних &kdesrc-build; і за певних обставин обходять файл журналу (зазвичай, під час виконання першого отримання &git;), в такому випадку помилки не можна буде знайти файл журналу, — всі помилки буде виведено до &konsole; або програми термінала, з якої ви запустили &kdesrc-build;.</para>
</tip>

</sect3>
</sect2>
</sect1>
