WWW.CYRON.CZ

Vše pro Váš Mageia Linux

Vytvoření vlastního RPM balíčku 6 - vytvoření RPM ze zdrojového kódu


Nejčastěji budete jistě potřebovat vytvořit binární RPM ze zdrojových souborů. Tyto bývají nejčastěji zabaleny v archívu TAR.GZ nebo TAR.BZ2. Vlastní kompilaci popisovat nebudu, zájemci najdou na internetu dostatek informací. Zde uvedu jen jednoduchý návod, kdy na počátku je zdroják a na konci binární RPM.


Zdrojový archív si stáhněte z domovské stránky programu.


Tuto šablonu si překopírujte a uložte:

%define distsuffix mdx.cyron.
%define packager Miroslav Cyron <miroslav.cyron@gmail.com>

%define name		
%define version		
%define release		%mkrel 1

Name:		%{name}
Version:	%{version}
Release:	%{release}
Summary:	
License:	GNU/GPL
Group:		
Source:		%{name}-%{version}.tar.gz
URL:		
#Requires:	
#BuildArch:	noarch
BuildRoot:	%{_tmppath}/%{name}-buildroot
#Provides:	
#Obsoletes:	

%description

%prep
%setup

%build
%configure
%make

%install
rm -rf $RPM_BUILD_ROOT
%makeinstall

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%{_bindir}
%{_datadir}

%changelog
* Sun Mar 29 2009 Miroslav Cyron <miroslav.cyron@gmail.com> (language: czech, slovak, polish)
+ version 

Pochopitelně změňte distsuffix, packager, changelog. Její kopii přejmenujte na název.spec a doplňte název, verzi, atd, viz minulé díly. Pro tento díl jsou podstatné sekce %build a %install.

%build
%configure

Teorii kompilace popisovat nebudu. Místo makra %configure použijte v případě potřeby ./configure --prefix=/usr, cmake -DCMAKE_INSTALL_PREFIX:=$RPM_BUILD_ROOT/usr, qmake PREFIX=$RPM_BUILD_ROOT/usr, atd.

%make

Vlastní kompilace.

%install
rm -rf $RPM_BUILD_ROOT
%makeinstall

SPEC soubor překopírujte do /root/rpmbuild/SPECS (do verze MDV 2009.0 včetně /usr/src/rpm/SPECS), zdrojový archív do /root/rpmbuild/SOURCES (do verze MDV 2009.0 včetně /usr/src/rpm/SOURCES).

Poté se přepněte do /root/rpmbuild/SPECS

cd /root/rpmbuild/SPECS

a spusťte kompilaci a balení.

rpmbuild -ba  ./název.spec

Kompilace se zřejmě napoprvé nezdaří, ve výpisu budou vypsány chybějící knihovny. Tyto v *-devel verzích nainstalujte a spusťte rpmbuild znovu.

Po skončení naleznete výsledný RPM ve složce /root/rpmbuild/RPMS/... (do verze MDV 2009.0 včetně /usr/src/rpm/RPMS/...), zdrojový SRC.RPM v /root/rpmbuild/SRPMS.


Díly seriálu

Autor: Miroslav Cyroň

Datum: 20 července 2009

Vstup do diskuze

60 GB her pro Linux

Největší herní repozitář na světě

Žádost o příspěvek.

Žádost o příspěvek

Jak někteří z Vás vědí, jsem těžce invalidní, mobilní jen na invalidním vozíku. Práci na tomto webu věnuji cca 12 hodin denně.

V oblasti financování provozu tohoto webu (HW, hostingu, a podobných věcí) nemohu vše financovat ze svého, proto prosím o příspěvek. Nechci vydělávat, jen udržet provoz.

Pokud je Vám má práce k užitku, přispějte prosím jakoukoliv finanční částkou na účet číslo 178365410/0300. Děkuji moc.

Diskuze

Užitečné odkazy: