Il faut, d'abord lire http://qa.mandrakesoft.com/twiki/b [...] mHowTo_Fr.
En gros :
1.- avoir des sources urpmi bien définies (main, contrib, update)
2.- créer un dossier rpm dans le home/utilisateur (~) et une arborescence comme rpm/BUILD rpm/SOURCES rpm/SPECS rpm/SRPMS rpm/tmp rpm/RPMS/i586 rpm/RPMS/noarch
3.- placer dans home un fichier .rpmmacros
%_topdir ~/rpm
%_tmppath ~/rpm/tmp
%_signature gpg
%_gpg_name Prénom Nom <email>
%_gpg_path ~/.gnupg
%distribution Mandriva Linux
|
et le fichier .rpmrc
buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586 |
4.- télécharger le src.rpm dans ~/rpm/SRPMS
5.- ouvrir une console non-root dans ~/rpm/SRPMS: rpmbuild --rebuild whatever.src.rpm la phase de reconstruction s'opère sauf s'il manque des librairies nécessaires à la compilation.
6.- ouvrir une autre console, root cette fois, pour installer si nécessaire les librairies manquantes: urpmi libmanquante.rpm puis retourner si nécessaire à l'étape 5
8.- installer le nouvel rpm en résultant et se trouvant dans ~/rpm/RPMS/i586 ou noarch avec urpmi. On peut aussi définir (urpmi.addmedia) comme source pour urpmi les dossiers ~/rpm/RPMS/i586 et noarch et faire alors après la reconstruction un urpmi.update <nom de la source urpmi définie> suivi d'un urpmi --auto-select
9.- vérifier le rpm avec rpmlint: man rpmlint
Après, il est souvent préférable d'installer le src.rpm, de regarder le spec file, de modifier le postfixe mdk par qqchose de personnel afin de le différencier des packages officiels et de signer les rpm engendrés avec une clé gpg.
Message édité par Sagittarius le 19-05-2005 à 11:24:23