Le fichier spec:
#001 Pour fedora extras ceci %define desktop_vendor gc ne devrait pas être présent sur le fichier spec:
donc il faut virer --vendor %{desktop_vendor} de la ligne 44
desktop-file-install --vendor %{desktop_vendor} --delete-original \
#002 dependences
- requires:
SDL_mixer depend de SDL (rpm -qR SDL_mixer)
donc efface SDL de requires
- buildrequires:
SDL_mixer-devel depend de SDL-devel (rpm -qR SDL_mixer-devel)
donc efface SDL-devel de buildrequires
#003 %makeinstall
http://fedoraproject.org/wiki/Packaging/Guidelines#head-fcaf3e6fcbd51194a5d0dbcfbdd2fcb7791dd002
Il faut utiliser make DESTDIR=%{buildroot} install à la place
#004 repertoires
%dir %{_datadir}/%{name}
%dir
%{_datadir}/%{name}/characters/*
%{_datadir}/%{name}/script/*
%{_datadir}/%{name}/fonts/*.ttf
%{_datadir}/%{name}/fonts/*.png
%{_datadir}/%{name}/gfx/*.png
%{_datadir}/%{name}/gfx/*.bmp
%{_datadir}/%{name}/gfx/*.jpg
%{_datadir}/%{name}/gfx/level*.desc
%{_datadir}/%{name}/sound/*.voc
%{_datadir}/%{name}/sound/*.wav
%{_datadir}/%{name}/sound/*.s3m
%{_datadir}/%{name}/sound/*.mod
%{_datadir}/%{name}/sound/soundmap.txt
tu peux remplacer tout ça par
%{_datadir}/%{name}
seulement
#005 changelog
* Thu Nov 2 2006 Eric Doutreleau EMAIL VERSION-RELEASE
il manque ton email et la version et release.
Astuces suplementaire:
yum install rpmlint
rpmlint verifie les erreurs habituelles dans les rpms
chitlesh(SPECS)[1]$rpmlint /home/chitlesh/rpmbuild/SRPMS/openmortal-0.7-4.src.rpm
W: openmortal strange-permission openmortal.png 0660
W: openmortal strange-permission openmortal-0.7.tar.bz2 0600
W: openmortal strange-permission openmortal.spec 0660
W: openmortal mixed-use-of-spaces-and-tabs (spaces: line 11, tab: line 4)
strasnge-permission: il faut que tous les 3 sont sous 0644 avant de créer les rpms
chmod 644 RPM
mixed-use-of-spaces-and-tabs; tu as melangé les tabs et les espaces 🙂
chitlesh(SPECS)[1]$rpmlint /home/chitlesh/rpmbuild/RPMS/i386/openmortal-0.7-4.i386.rpm
W: openmortal incoherent-version-in-changelog Doutreleau 0.7-4
E: openmortal non-executable-script /usr/share/openmortal/script/Collision.pl 0644
E: openmortal non-executable-script /usr/share/openmortal/script/Backend.pl 0644
E: openmortal non-executable-script /usr/share/openmortal/script/Damage.pl 0644
E: openmortal non-executable-script /usr/share/openmortal/script/CollectStats.pl 0644
si ces fichiers sont des executables tu les ignores, sinon dans ton spec tu les attributes les droits 0644
chitlesh(SPECS)[1]$rpmlint /home/chitlesh/rpmbuild/RPMS/i386/openmortal-debuginfo-0.7-4.i386.rpm
(rien)
mets ton fichier spec et ton srpm à jour, je le vérifie de nouveau 🙂