⇤ ← Версия 1 от 2013-03-29 14:29:43
2141
Комментарий:
|
2141
|
Удаления помечены так. | Добавления помечены так. |
Строка 2: | Строка 2: |
=== «Пакт исходников» === | === «Пакет исходников» === |
Строка 8: | Строка 8: |
=== Спецификация ==== | === Спецификация === |
Строка 12: | Строка 12: |
Разделы, параграфы и макросы. | Разделы, параграфы и макросы. |
Сборка пакета из исходников
«Пакет исходников»
- Исторические корни
- Состав: исходники (upstream+patches+дополнительно) + спецификация
Пререквизиты: BuildReq и BuildPreReq
rpmbuild
- Результат rpm -i *.src.rpm. Структура %_topdir
Спецификация
Материал для изучения: http://www.altlinux.org/Spec На примере ALT RPM:
Структура spec-файла
Разделы, параграфы и макросы.
Много макросов в /usr/lib/rpm/macros*
- ~/.rpmmacros
Разделы и полезные макросы:
- Заголовок
- Паспорт: Name, License, Summary, Group, Url
- Версия: Version, Release, Epoch
- Исходники: параграфы Source, Source#, Patch, Patch#
- Зависимости: Build(Pre)Req, (Pre)Requires. Версии в зависимостях
Прочее: BuildArch, Provides, Obsoletes, Conflicts, …
- макросы %name, %version, …, %summary
- %description
- %prep: %setup, %patch*
- %build: %configure, %make, %make_build
- Привязка к установке в каталог %buildroot
- Макросы для других сборочных инструментов: %cmake, %autoreconf
- %install
- %makeinstall
- %_что-то-там-dir, %_prefix
rpm --eval
- %check
- %files: %dir, %config, %attr
%changelog ([[http://www.altlinux.org/Руководство_по_написанию_changelog|ALT руководство)
- автозакрытие ошибок
- Множественные пакеты (%package и соотв. разделы)
Полезное при сборке
- Редкоиспользуемые в ALT секции
- %clean (никогда), %pre
- rpmbuild … --short-circuit …
- buildreq
Установка пакетов из свалки: rpm-dir в /etc/apt/sources.list