Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π² LinuxΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 181

Автор ΠœΡΡ‚ΡŒΡŽ НСйл

Group:Β Β Β Β Β Β Β  Applications/Media

Π­Ρ‚Ρƒ сСкция RPM-Ρ„Π°ΠΉΠ»Π° spec часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ. Π’ Π½Π΅ΠΉ содСрТатся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹

Name
,
Version
ΠΈ
Release
. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ имя β€” myapp, Π½ΠΎΠΌΠ΅Ρ€ вСрсии β€” 1.0 ΠΈ Π½ΠΎΠΌΠ΅Ρ€ выпуска ΠΈΠ»ΠΈ сборки RPM-ΠΏΠ°ΠΊΠ΅Ρ‚Π° β€” 1, Ρ‚.ΠΊ. эта ваша пСрвая ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° создания RPM-ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€

Group
примСняСтся для облСгчСния графичСской инсталляции ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, сортируя тысячи ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для систСмы Linux ΠΏΠΎ Ρ‚ΠΈΠΏΠ°ΠΌ. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚
Distribution
Π²Π°ΠΆΠ΅Π½, Ссли Π²Ρ‹ создаСтС ΠΏΠ°ΠΊΠ΅Ρ‚ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ дистрибутива Linux, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Red Hat ΠΈΠ»ΠΈ SUSE Linux.

НСплохо Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ваш Ρ„Π°ΠΉΠ» spec ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Как ΠΈ сцСнарии ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, ΠΈ make-Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΠΌΠ°Π½Π΄Π°

rpmbuild
считаСт ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ Π»ΡŽΠ±ΡƒΡŽ строку, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΡƒΡŽΡΡ с символа
#
. НапримСр:

# Π­Ρ‚ΠΎ строка коммСнтария.

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ ΠΈΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ваш ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСкции

Summary
ΠΈ
%description
(ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π΅ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ RPM-синтаксиса, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‰Π΅Π³ΠΎ Π·Π½Π°ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ сСкции описания). НапримСр, свой ΠΏΠ°ΠΊΠ΅Ρ‚ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Summary:Β Β Β  Trivial application

%description

MyApp Trivial Application

A trivial application used to demonstrate development tools.

This version pretends it requires MySQL at or above 3.23.

Authors: Neil Matthew and Richard Stones

БСкция

%description
ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ (ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ состоит) ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строк.

Π€Π°ΠΉΠ» spec ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ возмоТности прСдоставляСт ваш ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΎΡ‚ Ρ‡Π΅Π³ΠΎ ΠΎΠ½ зависит. (Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΎΡ‚ Ρ‡Π΅Π³ΠΎ зависит ΠΏΠ°ΠΊΠ΅Ρ‚ исходных Ρ„Π°ΠΉΠ»ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для компиляции.)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€

Provides
опрСдСляСт возмоТности, прСдоставляСмыС вашСй систСмой. НапримСр:

Provides:Β goodness

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ утвСрТдаСтся, Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ прСдоставляСт Π²Ρ‹ΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΡƒΡŽ

goodness
(Ρ†Π΅Π½Π½Ρ‹Π΅ свойства). RPM-систСма Ρ‚Π°ΠΊΠΆΠ΅ автоматичСски добавляСт элСмСнт
Provides
ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС myapp. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Provides ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ Π² случаС мноТСствСнных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. НапримСр, ΠΏΠ°ΠΊΠ΅Ρ‚ Web-сСрвСра Apache прСдоставляСт срСдство webserver. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Thy, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ срСдство. (Для облСгчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ RPM-систСма позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ элСмСнтов Conflicts ΠΈ Obsoletes.)

НаиболСС ваТная ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ информация опрСдСляСтся Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ…

Requires
. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ всС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для функционирования вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π°. НапримСр, Web-сСрвСру трСбуСтся сСтСвой ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ бСзопасности. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ Π·Π°Π΄Π°Π΅Ρ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π‘Π£Π Π‘Π” MySQL вСрсии 3.23 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ свСТСй. БинтаксичСская запись ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π΄Π°Π»Π΅Π΅:

Requires:Β mysql >= 3.23

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° Π‘Π£Π Π‘Π” MySQL любой вСрсии, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Requires:Β mysql

RPM-систСма Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Ссли Π½Π΅ установлСны ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρ‹. (ΠŸΡ€Π°Π²Π΄Π°, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ это ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.)

RPM-систСма автоматичСски добавляСт зависимыС элСмСнты, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ /bin/sh для сцСнариСв ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Perl для сцСнариСв Π½Π° языкС Perl ΠΈ Π»ΡŽΠ±Ρ‹Π΅ совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ so), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. КаТдая новая вСрсия RPM-систСмы Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ всС Π½ΠΎΠ²Ρ‹Π΅ срСдства для автоматичСской ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ зависимостСй.

ПослС задания Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ исходныС Ρ„Π°ΠΉΠ»Ρ‹, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ просто ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку:

source:Β %{name}-%{version}.tar.gz

БинтаксичСская запись

%{name}
ссылаСтся Π½Π° RPM-макрос, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС имя ΠΏΠ°ΠΊΠ΅Ρ‚Π°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π½Π΅Π΅ Π²Ρ‹ Π·Π°Π΄Π°Π»ΠΈ имя myapp, ΠΊΠΎΠΌΠ°Π½Π΄Π°
rpmbuild
Π·Π°ΠΌΠ΅Π½ΠΈΡ‚
%{name}
Π½Π°
myapp
ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚
%{version}
Π½Π°
1.0
, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для построСния Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ myapp-1.0.tar.gz. Π˜ΡΠΊΠ°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ» ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ SOURCES, описанном Ρ€Π°Π½Π΅Π΅.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ задаСтся ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€

Buildroot
, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ мСсто установки ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ваши ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку:

Buildroot:Β %{_tmppath}/%{name}-%{version}-root

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€

Buildroot
Π·Π°Π΄Π°Π½, устанавливайтС ваши прилоТСния Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°
Buildroot
. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ
$RPM_BUILD_ROOT
, которая задаСтся для всСх сцСнариСв ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ spec.

ПослС задания всСх этих характСристик ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π΄Π°Π»Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚. Для этого Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ основныС сСкции:

%prep
,
%build
,
%install
ΠΈ
%clean
.

Будя ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, сСкция

%prep
ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ сборки. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π΄Π°Π»Π΅Π΅ макрос
%setup
с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ
-q
для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° Π΅Π³ΠΎ Π² Ρ€Π΅ΠΆΠΈΠΌ Π±Π΅Π· Π²Ρ‹Π²ΠΎΠ΄Π° сообщСний:

%prep

%setup -q

БСкция

%build
собираСт вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ
make
. НапримСр:

%build

make

Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· способов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ RPM-систСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ Π²Π°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ созданию make-Ρ„Π°ΠΉΠ»Π°.

БСкция

%install
устанавливаСт вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ справочноС руководство ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ RPM-макрос
%makeinstall
, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½ΠΈΠ΅
install
make-Ρ„Π°ΠΉΠ»Π°. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС установим Ρ„Π°ΠΉΠ»Ρ‹ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ RPM-макросы:

%install

mkdir -Ρ€ $RPM_BUILD_ROOT%{_bindir}

mkdir -p $RPM_BUILD_ROOT%{_mandir}

install -m755 myapp $RPM_BUILD_ROOT%{_bindir}/myapp

install -m755 myapp.1 $RPM_BUILD_ROOT%{_mandir}/myapp.1