User Tools

Site Tools


mkrpm-it

Creazione di un pacchetto RPM

Breve descrizione della procedura per la creazione di un pacchetto RPM


Operazioni preliminari

Innanzitutto è necessario che copiate il file Rocrail/rocrail/_rpmmacros nella vostra cartella home:

utente@rocrail:~/sf$ cp Rocrail/rocrail/_rpmmacros ~/.rpmmacros

Non dimenticate la parte finale del comando per creare un file nascosto (con il punto davanti).

Dovrete creare manualmente le cartelle. Per esempio potrete impostare $HOME/rpmbuild come %_topdir, quindi eseguite i seguenti comandi per creare la struttura necessaria:

mkdir ~/rpmbuild/BUILD
mkdir ~/rpmbuild/RPMS
mkdir ~/rpmbuild/RPMS/i386
mkdir ~/rpmbuild/SOURCES
mkdir ~/rpmbuild/SPECS
mkdir ~/rpmbuild/SRPMS

Pacchetti probabilmente necessari

Con il seguente comando, assicuratevi di avere i seguenti pacchetti installati nel vostro sistema:

[utente@rocrail rocrail]$ rpm -qa | grep rpm
freshrpms-release-1.1-1.fc
rpm-libs-4.4.2-33.fc6
redhat-rpm-config-8.0.45-9.fc6
rpm-python-4.4.2-33.fc6
rpm-devel-4.4.2-33.fc6
rpm-build-4.4.2-33.fc6
rpm-4.4.2-33.fc6

Esecuzione dello script

Dovrete essere in grado di prelevare il codice sorgente con subversion poiché necessario per il processo di compilazione del pacchetto RPM. Lo script mkrpm.sh si trova nella cartella Rocrail/rocrail. Di seguito un esempio di esecuzione dello script:

[utente@rocrail sf]$ cd Rocrail/rocrail/
[utente@rocrail sf]$ ./mkrpm.sh 0.11 0 HEAD robvrs i386

Il processo richiederà un po' di tempo per la sua ultimazione. L'output dovrebbe essere simile a questo:

Wrote: /home/utente/rpmbuild/i386/rocrail-0.11-0.i386.rpm
Wrote: /home/utente/rpmbuild/i386/rocrail-debuginfo-0.11-0.i386.rpm
Executing(%clean): /bin/sh -e /home/rob/rpmbuild/TMP/rpm-tmp.16474
+ umask 022
+ cd /home/rob/rpmbuild/BUILD
+ cd rocrail-0.11
+ exit 0
cleanup...

Parametri

  1. versione
  2. patch
  3. tag subversion
  4. nome utente per il prelievo con subversion
  5. architettura cpu (redhat i386, suse i586)

Posizione del pacchetto

Il nuovo pacchetto dovrebbe essere stato creato all'interno della cartella ~/rpmbuild/i386 o ~/rpmbuild/i586.

L'output del comando ls all'interno della cartella Rocrail/rocrail sarà:

[utente@rocrail rocrail]$ ls -l ~/rpmbuild/i386/
total 17340
-rw-rw-r-- 1 user user 2273410 Sep  5 18:26 rocrail-0.11-0.i386.rpm
-rw-rw-r-- 1 user user 3839285 Sep  5 18:26 rocrail-debuginfo-0.11-0.i386.rpm

File Spec

Il necessario file spec Rocrail/rocrail/rocrail.spec sarà simile a questo:

Summary: Model RailWay Software
Name: rocrail
Vendor: rocrail.net
Version: 0.11
Release: 0
Group: Amusements/Games
License: gpl
Packager: Rob Versluis <support@rocrail.net>
URL: http://www.rocrail.net/
Source: rocrail-%version-%release.tar.gz
%description
RocRail is a 2 tier application written for Linux and Windows in C/C++ based on the wxWidgets class library.

…Omissis…

%changelog

Verificate che i parametri di versione siano corretti e coincidano.

Procedure guidate

mkrpm-it.txt · Last modified: 2018/11/12 08:56 (external edit)