Създаване на пакети (руски)
Тази страница се нуждае от придружител
Документът ABS - Системата Arch Build дава добър преглед на инструментите и файловете, необходими за създаване и модифициране на пакети за Arch Linux. Шансовете са, че тук ще намерите всичко, което трябва да знаете, за да персонализирате или възстановите съществуващите пакети. Междувременно, ако трябва да създадете нов пакет, има няколко допълнителни статии, които да ви помогнат с това. Този документ първоначално предполага, че сте прочели и разбрали описанието на ABS.
Подготовка на файлове
Цялата информация за създаване на пакет се поставя във файла PKGBUILD. Когато стартирате makepkg, той търси PKGBUILD в текущата работна директория и след това изгражда приложението от източник, следвайки инструкциите в PKGBUILD. След успешна компилация, получените двоични файлове, както и цялата необходима мета информация (като версията на пакета и зависимости), се архивират в пакетния файл с име.pkg.tar.gz, който може лесно да се инсталира с помощта на pacman -Up команда .
Файлът PKGBUILD съдържа всичко инструкции за създаване на пакет, които се интерпретират директно от bash (не се страхувайте, ако не разбирате нищо). Използваните тук променливи са дефинирани в статията за ABS, но най-важните/сложни променливи също са описани тук. За да създадете нов пакет, първо трябва да създадете празна директория; за предпочитане е да го кръстите/var/abs/local /. В този случай пакетът се интегрира перфектно в нормалното дърво на ABS и не се влияе от cvsup, дори когато актуализирате дървото. Отидете в директорията на пакета и създайте PKGBUILD файл, като копирате файла на прототипа на пакета /usr/share/pacman/PKGBUILD.proto, или копирайте PKGBUILD от друг пакет. Последното е по-бързо, ако трябва да промените опциите за компилация за пакета, вместо да създавате нов.
Отсега нататък обаче ви е необходим PKGBUILD файл, за да продължите.
Редактиране на променливи
Отворете файла PKGBUILD и задайте следните променливи в зависимост от пакета, който изграждате:
И така, инсталирахме метаинформацията за пакета - списък на зависимости, конфликти, списък с файлове за изтегляне и т.н. Следващите стъпки са да изградите и инсталирате пакета директно. - Oleg-A 08:09, 6 юли 2008 г. (EDT)
Използване на изходния код
Сега трябва да изтеглите архива с изходния код, да го разархивирате и да обърнете внимание на командите, необходими за изграждане и инсталиране. Съдържанието на функцията build () във вашия PKGBUILD ще повтори точно тези стъпки отново, но с незначителни промени, за да направи пакета готов за инсталиране веднага щом компилацията приключи.
Засега най-вероятно ще трябва да промените съдържанието на функцията build () във файла PKGBUILD. Той използва bash синтаксис и стандартни команди на черупката. Тази функция се използва главно за автоматично компилиране на програми. Той създава pkg директория, в която след това инсталира програмата, позволявайки на makepkg да изгради пакет по този начин, без да се налага да използва файлове от останалата файлова система.
Функция Build ()
Обикновено първата стъпка в тази функция е да смените работната директория на една от създадените при разопаковане на изходния код. За да направите това, можете да използвате променливата $ startdir, която се отнася до директорията с файла PKGBUILD. Можете също да използвате декларираните $ pkgname и $ pkgver .
Не използвайте $ startdir/src вместо $ srcdir и $ startdir/pkg вместо $ pkgdir. Варианти с startdir остарял и неизползваем с pacman 4.1.
Сега, когато сте в правилната директория, трябва да разберете какви команди са необходими за изграждане на пакета. В най-простите случаи можете да използвате ./configure; make, въпреки че има десетки вариации, включително ant build или използване на gcc команди за компилиране.
Добрата новина е, че ако вече сте успели ръчно да изградите пакета, просто трябва да запишете командите, които сте използвали, след което всичко трябва да работи нормално. Тъй като много пакети обичат да се инсталират в/usr/local и Arch Linux предпочита да използва само/usr, вероятно ще искате да дадете опция на скрипта за конфигуриране или да направите команда, за да се погрижите за това. Оригиналният PKGBUILD служи като пример за това, въпреки че може да работи по различни начини.
- Често можете да посочите префикс в configure, който показва къде да инсталирате програмата. Например можете да използвате в config ./configure --prefix = $ pkgdir/usr .