Збирання пакунків RPM з GIT

Отримання початкового коду

Для початкової копії коду зі сховища вам знадобиться певне місце на диску (близько 25 мегабайтів) у вибраному вами каталозі, пакунок git для вашого дистрибутива та повний доступу до інтернету. Якщо ви отримуватимете повідомлення щодо помилок, пов’язаних із відмовою у з’єднанні, ви або ввели команду із помилками або ваш надавач послуг інтернету не надає вам повноцінного доступу. Рекомендованим місцем для файлів коду є "$HOME/src".

  1. Спочатку створіть каталог, до якого буде отримано підкаталог з кодом Kwave, і перейдіть до нього:

    % mkdir -p $HOME/src
    % cd $HOME/src
    

  2. Далі, отримайте найсвіжіший код із сервера GIT:

    % git clone git://anongit.kde.org/kwave.git kwave
    

    або можете отримати певний випуск програми за допомогою таких команд:

    % git clone git://anongit.kde.org/kwave.git kwave
    % cd kwave
    % git checkout tags/[мітка випуску] 
    

    Зі списком назв міток випусків можна ознайомитися за допомогою сторінки git з адресою http://commits.kde.org/kwave.git/refs/. Назви міток випусків завжди складаються зі слова Release- і номера версії випуску із підкресленнями замість крапок. Приклад: «Release-0_9_3» для версії 0.9.3.

Застереження

У каталозі, до якого ви хочете отримати код, не повинно бути підкаталогу з назвою kwave. Якщо цю вимогу не буде виконано, git поскаржиться щодо того, що файли вже існують і що отримати код неможливо.

Оновлення коду з GIT

Виконувати описану у попередньому розділі процедуру слід лише уперше. Подальше оновлення є набагато простішим. Просто перейдіть до каталогу, до якого було отримано код проекту і віддайте команду оновлення до найсвіжішої версії:

% git pull

Далі, перейдіть до наступного розділу і зберіть програму так, як це зазвичай робиться.

Примітка

Якщо ви вважаєте, що якимось чином пошкодили код у локальній ієрархії коду або під час оновлення виникають конфлікти з вашими змінами, і ви хочете розпочати з оригінального коду, ви можете віддати таку команду, щоб відкинути усі локальні зміни і повернутися до найсвіжішої версії з основної гілки розробки:

% git clean --force -d
% git reset --hard
% git checkout master

Компіляція

Збирання пакунка rpm з локальної копії сховища GIT є доволі простою справою. Процедура є майже такою самою, що і у останньому розділі, отже, на жаль, у ній є та сама проблема з командою rpmbuild -ta, яка використовується у нашому методі. Подібно до попередньої глави, [архітектура] позначає назву платформи, для якої збирається пакунок, можливі значення: i386, i586, sparc тощо, а XXX слід замінити на номер версії, пакунок для якої ви збираєте.

Примітка

Зауваження для користувачів SuSE: тут вам теж слід вказати каталог /usr/src/packages замість каталогу /usr/src/redhat!

Припускаємо, що вами відкрито кореневу теку отриманого з GIT коду. Віддайте вказані нижче команди для створення Makefile, пакунка Kwave та його встановлення. Якщо у вашій системі вже встановлено якусь версію Kwave, будь ласка, спочатку вилучіть її або скористайтеся командою rpm -U замість команди rpm -i для оновлення пакунка замість простого встановлення.

% mkdir /tmp/kwave-build
% cd /tmp/kwave-build
% cmake $HOME/src/kwave
% make rpm
% rpm -ivh /usr/src/redhat/BUILD/[архітектура]/kwave-XXX.[архітектура].rpm

Примітка

Якщо вам не вдається уникнути проблем з командою make rpm, ви можете знайти створений архів tar.bz2 у каталозі /tmp. Будь ласка, виконайте настанови з попередньої глави.