Воскресенье
05.05.2024, 18:31
| RSS
Главная
Меню сайта

Категории раздела
Madriva [3]
Ubuntu (KUbuntu, EdUbuntu, XUbuntu) [78]
SUSE [1]
Fedora Core [9]
ASPLinux [1]
Debian [16]
Gentoo [3]
Другие [167]

Мини-чат

Наш опрос
Какую графическую среду Вы используете?
Всего ответов: 103

Статистика

Rambler's Top100Рейтинг@Mail.ru

Главная » 2011 » Март » 2 » Создание RPM пакетов из исходников
Создание RPM пакетов из исходников
12:19
Данная статья описывает процесс создания RPM пакетов на примере Fedora.

RPM пакеты имеют собственную структуру, отличную от других. Но зачем создавать свои RPM, если можно просто скомпилировать исходники? Ответ на этот вопрос в рутинной установке, а также помощи разработчикам Fedora или другим дистрибутивам. Устанавливая каждый раз одни и те же программы из исходников, можно написать скрипт для автоматизации этого, однако, если есть RPM, то не надо тратить много времени на установку, также как и необходимая программа будет постоянно доступна онлайн из репозитория (конечно же, если вы ее туда отправите).

Итак приступим к подготовке рабочей среды для создания RPM.

# yum groupinstall "Development Tools"
# yum install rpmdevtools
На данной стадии происходит установка необходимых утилит и различных библиотек разработчика.

НИКОГДА НЕ СОЗДАВАЙТЕ RPM ОТ ROOT! (это может нарушить работу системы, увеличить возможность взлома и так далее)

После окончания установки, запустите

rpmdev-setuptree
Это приведет к создание ветки директорий
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS

Из всех директорий нас интересует только SOURCES SPECS, информация в остальных, если все сделано верно, сгенерируется автоматически.

Теперь нам нужен .spec файл, примеры можно найти путем стачивания .src.rpm с репозитория, после распаковки, будет .spec файл, который необходимо поправить под наши нужды.

Сами исходники с патчами или без, копируем в SOURCES.

Когда все готово, запускаем компилирование и создание RPM

rpmbuild -ba ПУТЬ/NAME.spec для создания .src.rpm
rpmbuild -bi ПУТЬ/NAME.spec для создания бинарника или просто .rpm

Для установки и/или тестирования

# rpm -ivh sourcepackage-name*.src.rpm
или
# rpm -ivh package-name*.rpm
Если все сделано правильно, то программа установится с предупреждением, что rpb database изменена сторонней программой (правильно, мы же ее еще не залили на Fedora сервер).

Объяснение часто используемых областей в .spec файле

Name: Базовое имя пакета удовлетворяющее требованиям Packagen Naming Guidelines. После этого, макрос %{name} будет обращаться к данному разделу.

Version: Номер версии, при использовании даты в версии, используйте формат, гг.мм (пример 11.02). %{version} для последуещого обращения к данной области.

Release: Должно быть 1%{?dist}, таким образом, число будет увеличиваться каждый раз, когда создается пакет для одной и той же версии дистрибутива.

Summary: Краткое описание пакета.

Group: Существующая группа пакетов, например Applications/Databases.

Чтобы узнать весь список
# less /usr/share/doc/rpm-*/GROUPS
Для документации будет соответственно группа Documentation.

License: Лицензия на программу, обязана быть для открытых исходников, например "GPLv2+" (GPL версии 2 или новее). Для нескольких лицензий используйте "and" или "or" "GPLv2 and BSD". Следует указывать лицензию максимально точно, можно указывать несколько лицензий с помощью "and" и "or", например "GPLv2 and BSD".

URL: Ссылка на сайт программы/проекта.

Source0: Ссылка на архив с исходным кодом. Если указана полная ссылка, то одноименный пакет должен быть в папке SOURCES. Если источников исходного кода несколько, то используем Source1, Source2 и т.д.

Patch0: Название первого патча для программы, имя файла должно заканчиваться на .patch и лежать в директории ~/rpmbuild/SOURCES. Патчей может быть несколько.

BuildArch: Архитектура программы под определенные процессоры. Для универсальных пакетов "noarch".

BuildRoot: Место, выделенное для компиляции и установки исходников приложения во время выполнения процесса "%install". По стандарту Fedora, будет создана специальная директория в /var/tmp. Более новые версии RPM пропустят это значение и поместят build root в %{_topdir}/BUILDROOT/

BuildRequires: Список необходимых приложений для сборки пакета (через запятую). Автоматически не определяются. Некоторые стандартные приложения могут быть опущены в данном списке. Полный список приложений, которые могут быть пропущены здесь (https://fedoraproject.org/wiki/Packaging/Guidelines).

Requires: Список необходимых приложений для работы после установки (через запятую). В большинстве случаев определяются автоматически rpmbuild.

%description: Описание программы, строки не должны быть длиннее 80 символов.
%prep: Скрипты для подготовки программы, распаковки и подготовки к сборке.
%build: Скрипты для сборки программы, компиляции и подготовки к установке.
%test: Скрипты для тестирования программы, выполняются после %build, но до %install.
%install: Скрипты для установки программы, команды скопируют файлы из "build directory" %{_builddir} (которая находится ~/rpmbuild/BUILD) в директорию buildroot %{buildroot}, которая обыно находится в /var/tmp.
%clean: Инструкции для очистки buildroot, например,
rm -rf %{buildroot}
%files: Список устанавливаемых файлов.
%changelog: Изменения в программе.

//xenos88

Статья подготовлена опираясь на официальный источник от Fedora
Категория: Fedora Core | Просмотров: 926 | Добавил: boiko | Рейтинг: 0.0/0 |
Всего комментариев: 151 2 »
15 Артем  
0
Здравствуйте! Увеличиваю поток клиентов с онлайн карт!

Накрутка рейтинга на Авито/Яндекс/2гис/Маркетплейсы и др.

А так же:
- Реклама в Яндекс/Гугл, ВК и Инстаграм.
- Создание и СЕО сайтов.
- Авито продвижение.

Если интересно, пишите мне в WhatsApp: +7(962) 546-38-36

14 Дмитрий  
0
Платите за SEO-продвижение давно, но результатов все нет? Я помогу вывести любые запросы Вашего сайта в ТОП Яндекса за 5 дней! Бесплатный тест.

Кейсы и обратная связь: https://telegra.ph/Kejsy-po-bystromu-vyvodu-sajtov-v-TOP-04-09

С уважением, Дмитрий

13 Владислав  
0
Меня зовут Владислав, и я представляю команду Web Hero. Мы обнаружили несколько технических недочетов на вашем сайте, которые могут отталкивать ваших клиентов.

Наша команда готова приступить к исправлению этих проблем немедленно, чтобы ваш сайт работал безупречно.

Давайте обсудим возможности сотрудничества и наши предложения по улучшению вашего веб-ресурса. Просто оставьте заявку на нашем сайте: wbhr.ru, или свяжитесь со мной напрямую по адресу sale.tp1@wbhr.ru.

С уважением,

Владислав

Web Hero

12 Информационный ресурс  
0
Понимание текущих событий в судостроительной отрасли России имеет огромное значение для профессионалов и специалистов этой сферы. Новости и аналитика, публикуемые на отраслевом портале https://sudostroenie.info, помогают быть в курсе последних событий, тенденций и инноваций в судостроительной промышленности. Благодаря этому информационному ресурсу можно своевременно реагировать на изменения на рынке, принимать обоснованные решения и быть успешным в своей деятельности. Поэтому важно следить за обновлениями на портале https://sudostroenie.info и не упускать возможность получить актуальную информацию из первых уст.

11 Ltn Led  
0
Светодиодные светильники от производителя! Экономия от 30% при гарантии 5лет!

с 2012 года осуществляем производство и продажу светильников.

Промышленное, уличное, офисное и взрывозащищенное направление.

Заменяем дорогие брендовые светильники именитых заводов.

Сэкономили 82млн руб клиентам в 2022 заменив светильники в проектах,

наш ассортимент и возможности Ltn-Led.ru

почта для обсчета смет - strou-plo77@yandex.ru

10 bigdata  
0
Перехватим клиентов с сайтов конкурентов из их CRM, мобильных приложений или с номеров компании на которые звонят клиенты.
в 10 раз дешевле яндекс директа.
Современные инструменты BigData позволяют узнать кто посещал сайты конкурентов или звонил им на телефон, чтобы работать именно с этой горячей аудиторией в режиме реального времени
контакты от 17 рублей. можем предоставить под обзвон от 17 руб или разослать SMS/ MMS/ Viber от 3,6 руб (только РФ)
звонки посетителям сайтов конкурентов в реальном времени, в течение 20 минут с момента посещения сайта или звонка конкуренту, по самой горячей аудитории.
Любые законные ниши, торговля, услуги, строительство, перевозки, привлечение работников, агентов, B2B, B2C и т.д.
100% легальный метод, никакие законы не нарушаем.
Доступная цена. договор. закрывающие документы.
также можем добыть базы клиентов или поставщиков конкурентов в B2B и B2C сфере
наш cайт https://bigdata.popupbiz.ru оставьте заявку
телеграм канал @bigdatapopupbizru
email bigdatabiz@mail.ru
телефон для связи 89529082087

9 Сила женского Изобилия  
0
Здравствуй Волшебная Женщина!
Я Инна Морозова. Целитель Родовых Сценариев.
Знаешь как за 14 дней наполнить себя энергией ЖЕНСКОГО ИЗОБИЛИЯ?
А ещё и переписать Родовые сценарии отношений, финансов, здоровья и предназначения так, чтобы и ты, и твои потомки больше не проживали деструктивные программы? И просто кайфовали от этой жизни.
Тебе это уже нужно? Или ты ещё не "намучилась" преодолевать жизненные препятствия :-)
Если интересно, тогда переходи по ссылке, и узнай как за 14 дней всё это сделать.
До встречи ))

https://taplink.cc/silazhenskogoizobiliya

8 Весенний марафон  
0
Здравия всем!
«Весенний марафон»
Начинайте в любой момент – лучше сейчас! ))
Легче сберечь существующий потенциал здоровья, чем потом пытаться восстанавливать упущенный!

Как правило, у нас есть только два выбора:
1. Или мы занимаетесь своим здоровьем;
2. Или это делает за нас хирург.
Хотя бы попробуйте узнать чуть больше о том,
что мы предлагаем, перейдя по ссылке:
https://moe-zdorovje.club/joga

До скорой встречи! Ждем вас!
Наша почта: support@moe-zdorovje.club

7 Положительный отзыв  
0
Мы предлагаем услуги по написание и размещение положительных отзывов про Вас в интернете!!!

Работаем с самыми популярными площадками:
yandex.ru, google.ru, zoon.ru, yell.ru, otzyvru.com, ru.otzyv.com, 2gis.ru, hh.ru, pravda-sotrudnikov, spr.ru и многик другие.

Сайт https://otzyvtop.creatium.site/
Тел. 985-882-26-76
E-mail otzyv.top10@gmail.com

6 Территория  
0
Здравствуйте! Я представляю команду разработки и внедрения Национальной Системы «Территория» (https://территория.рус). Официальный запуск системы запланирован на июль, но уже сейчас мы можем в частном порядке предоставлять ранний доступ для компаний/сообществ, а также выстраивать сотрудничество на перспективу.

Система Территория уже официально внедряется на 5 территориях на Кавказе с общим пропуском до 3 миллионов гостей в год. Также, в этом году будет подключено ещё не менее 8 территорий с очень высоким потоком гостей. Общий потенциал аудитории в 2024 году составит более 3 миллионов человек.

Что будет доступно:
- Создание компании/сообщества в системе до официального открытия такой возможности.
- Лента новостей, галерея, документы и другие инструменты для организаций.
- Нахождение в публичном списке организаций до запуска системы.
- Возможность приобретения рекламных кредитов по цене от 10% стоимости на открытии.
- Постоянная скидка до 50% на рекламные кредиты.
- Различные привилегии раннего доступа.
- Высокая репутация ранних пользователей.
- Ранний доступ к другим продуктам.
- Прямая поддержка разработчиков в интеграции.

Просим отнестись с пониманием к вопросу ограниченого количества документации. Постепенно эта проблема будет решена.

Предложение ограничено физическими возможностями команды. На ранний доступ принимаем не более 100 компаний.

Это сообщение вам отправлено, чтобы выявить интерес к сотрудничесту. Если вам интересно предложение и вы готовы рассмотреть сотрудничество — напишите нам на email territory@anksystems.ru и мы с вами свяжемся.

1-10 11-15
Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта

  • Администрация

    Andry


    Tol


    Copyright MyCorp © 2024
    Хостинг от uCoz