Création de RPM - MDK 10.1
Rom1
-
kmf31 Messages postés 1564 Date d'inscription Statut Contributeur Dernière intervention -
kmf31 Messages postés 1564 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous !
Je suis actuellement en train de développer un logiciel (libre) d'envoie et de gestion de faxs (et de contacts) sous linux. Il s'appuie sur hylafax et la gestion sera assurée par un couple ldap/mysql ou tout mysql.
Le problème c'est que la création de rpm, et notamment la réalisation du fichier .spec me pose des problèmes. En fait, je n'ai nul besoin de compilation (pas de make ou de make install. En fait la commande de mon rpm serait de recopier les .php au bon endroit (genre $HOME/prog_fax/), c'est tout. Je voudrais utiliser la macro %setup mais j'ai l'impression que la macro %prep inclut quelque chose toute seule juste avant (qui ressemble un peu à mon code) et j'obtient des erreurs. Au vu des differents didactitiels que j'ai lu, je n'ai pas trouve de solution à ce problème...
Voici mon fichier (simplifie) .spec :
Ensuite je compile : rpm -ba fax.spec
Et j'ai alors cela :
Exécution_de(%prep): /bin/sh -e /tmp/rpm-tmp.44879
+ umask 022
+ cd /home/rom1/rpm/BUILD
+ cd /home/rom1/rpm/BUILD
+ rm -rf fax-0.1
+ tar -xvvf /home/rom1/rpm/SOURCES/fax-1.0.php
tar: Read 37 bytes from /home/rom1/rpm/SOURCES/fax-1.0.php
+ cd fax-0.1
/tmp/rpm-tmp.44879: line 24: cd: fax-0.1: No such file or directory
erreur: Mauvais status de sortie pour /tmp/rpm-tmp.44879 (%prep)
Lorsque j'edite le fichier tmp créé j'ai alors cela :
Donc il y a bien une inclusion, mais je ne comprends pas pourquoi...
Si vous pouviez éclairer ma lanterne, d'avance merci !
++
Rom1
Je suis actuellement en train de développer un logiciel (libre) d'envoie et de gestion de faxs (et de contacts) sous linux. Il s'appuie sur hylafax et la gestion sera assurée par un couple ldap/mysql ou tout mysql.
Le problème c'est que la création de rpm, et notamment la réalisation du fichier .spec me pose des problèmes. En fait, je n'ai nul besoin de compilation (pas de make ou de make install. En fait la commande de mon rpm serait de recopier les .php au bon endroit (genre $HOME/prog_fax/), c'est tout. Je voudrais utiliser la macro %setup mais j'ai l'impression que la macro %prep inclut quelque chose toute seule juste avant (qui ressemble un peu à mon code) et j'obtient des erreurs. Au vu des differents didactitiels que j'ai lu, je n'ai pas trouve de solution à ce problème...
Voici mon fichier (simplifie) .spec :
Name: fax Version: 0.1 Release: 1 License: GPL Group: Applications/Communications Summary: a Fax secured management software URL: http://.. Packager: rom1 #BuildRoot: %{name}-buildroot #Source: %{name}-%{version}.i586.tar.gz Source: fax-1.0.php #pour l'instant un seul fichier pour test #Requires: hylafax >= 4.2.0 #Requires: apache2 >= 2.0 #Requires: php-mysql>=4.3.8 %description FAX is as free fax secured management software. It permits to send and receive secured and/or shared faxs. It also include a contacts lists manager. %prep %setup cd /usr/src/RPM rm -rf fax/ mkdir fax/ cd fax/ tar -xvf fax-0.1.i586.tar.gz if [$? -ne 0]; then exit $?; fi chown -R root.root chmod -R 755 . %files fax-1.0.php
Ensuite je compile : rpm -ba fax.spec
Et j'ai alors cela :
Exécution_de(%prep): /bin/sh -e /tmp/rpm-tmp.44879
+ umask 022
+ cd /home/rom1/rpm/BUILD
+ cd /home/rom1/rpm/BUILD
+ rm -rf fax-0.1
+ tar -xvvf /home/rom1/rpm/SOURCES/fax-1.0.php
tar: Read 37 bytes from /home/rom1/rpm/SOURCES/fax-1.0.php
+ cd fax-0.1
/tmp/rpm-tmp.44879: line 24: cd: fax-0.1: No such file or directory
erreur: Mauvais status de sortie pour /tmp/rpm-tmp.44879 (%prep)
Lorsque j'edite le fichier tmp créé j'ai alors cela :
#!/bin/sh RPM_SOURCE_DIR="/home/rom1/rpm/SOURCES" RPM_BUILD_DIR="/home/rom1/rpm/BUILD" RPM_OPT_FLAGS="-O2 -fomit-frame-pointer -pipe -march=i586 -mtune=pentiumpro " RPM_ARCH="i386" RPM_OS="linux" export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS RPM_DOC_DIR="/usr/share/doc" export RPM_DOC_DIR RPM_PACKAGE_NAME="fax" RPM_PACKAGE_VERSION="0.1" RPM_PACKAGE_RELEASE="1" export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE set -x umask 022 cd /home/rom1/rpm/BUILD cd /home/rom1/rpm/BUILD rm -rf fax-0.1 tar -xvvf fax-1.0.php cd fax-0.1 cd /usr/src/RPM rm -rf fax/ mkdir fax/ cd fax/ tar -xvf fax-0.1.i586.tar.gz if [$? -ne 0]; then exit $?; fi chown -R root.root chmod -R 755 .
Donc il y a bien une inclusion, mais je ne comprends pas pourquoi...
Si vous pouviez éclairer ma lanterne, d'avance merci !
++
Rom1
A voir également:
- Création de RPM - MDK 10.1
- Creation de compte google - Guide
- Creation de site web - Guide
- Creation compte gmail - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
2 réponses
Petite précision : j'ai bien vu que la ligne
++
Rom1
tar -xvf fax-0.1.i586.tar.gzne fonctionnait pas mais de toute façon cela bloque bien avant ;). Cordialement,
++
Rom1
Petite précision : j'ai bien vu que la ligne
tar -xvf fax-0.1.i586.tar.gz
ne fonctionnait pas
Les options sont fausses: C'est soit:
(le "gunzip" decompresse l'archive et enleve le ".gz" a la fin)
ou soit:
Bref: pour un archive compesse (*.tar.gz) il faut ajouter l'option "z". Si on ne met pas cette option il faut que l'archive ne soit pas compresse (*.tar et pas *.tar.gz), donc decompresser manuellement avant (avec gunzip).
tar -xvf fax-0.1.i586.tar.gz
ne fonctionnait pas
Les options sont fausses: C'est soit:
gunzip fax-0.1.i586.tar.gz tar -xvf fax-0.1.i586.tar
(le "gunzip" decompresse l'archive et enleve le ".gz" a la fin)
ou soit:
tar -xvzf fax-0.1.i586.tar.gz
Bref: pour un archive compesse (*.tar.gz) il faut ajouter l'option "z". Si on ne met pas cette option il faut que l'archive ne soit pas compresse (*.tar et pas *.tar.gz), donc decompresser manuellement avant (avec gunzip).