Bash: éxec de cmd, paramètres non passés
Résolu/Fermé
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
-
16 juin 2008 à 10:13
kanar Messages postés 20 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 19 septembre 2008 - 16 juin 2008 à 12:10
kanar Messages postés 20 Date d'inscription lundi 16 juin 2008 Statut Membre Dernière intervention 19 septembre 2008 - 16 juin 2008 à 12:10
A voir également:
- Bash: éxec de cmd, paramètres non passés
- Bash permission non accordée - Forum Shell
- Bingo bash free - Télécharger - Divers Jeux
- Bash écrire dans un fichier - Forum Shell
- Bash path - Astuces et Solutions
- Bash: adduser : commande introuvable ✓ - Forum Debian
3 réponses
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
382
16 juin 2008 à 10:15
16 juin 2008 à 10:15
Salut,
t'es sur que le configure existe ?
t'es sur que le configure existe ?
ls ${gzcurl}
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
382
16 juin 2008 à 10:26
16 juin 2008 à 10:26
vire la variable CFLAGS
ou utilise là correctement :)
native fonctionne avec GCC4.2 ou supérieur
ou utilise là correctement :)
CFLAGS="-march=native -Os -pipe" CXXFLAGS="${CFLAGS}" ./configure --optiondelamort
native fonctionne avec GCC4.2 ou supérieur
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
16 juin 2008 à 10:37
16 juin 2008 à 10:37
Pour gcc c la 3.4.2 :(
cURL livre un super script (1,2Mo quand même), qui configure pour une bonne variété de plate-formes.
Dans le makefile résultant, CFLAGS ne prenanait que deux options "-g -O2", l'option --disable-debug ne virait pas le -g. Les autres flag de compile sont gérés dans d'autres variables puis ajoutés à la exécution de la commande dans le MacFly.
Est-ce que tu définit CFLAGS et CXXFLAGS juste avant la commande ?
./configure peut récupérer ces variables ?
cURL livre un super script (1,2Mo quand même), qui configure pour une bonne variété de plate-formes.
Dans le makefile résultant, CFLAGS ne prenanait que deux options "-g -O2", l'option --disable-debug ne virait pas le -g. Les autres flag de compile sont gérés dans d'autres variables puis ajoutés à la exécution de la commande dans le MacFly.
Est-ce que tu définit CFLAGS et CXXFLAGS juste avant la commande ?
./configure peut récupérer ces variables ?
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
382
>
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
16 juin 2008 à 10:43
16 juin 2008 à 10:43
Les variables CFLAGS et CXXFLAGS sont à renseigner avant le configure.
pour gcc 3.4, je te conseil de mettre ceci dans ta variable :
si ton proc est un i686 évidement :)
pour gcc 3.4, je te conseil de mettre ceci dans ta variable :
CFLAGS="-O2 -march=i686 -mtune=i686"
si ton proc est un i686 évidement :)
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
>
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
16 juin 2008 à 11:17
16 juin 2008 à 11:17
Après quelques tests le résultat c'est :
1- si dans mon script je met
CFLAGS="-O2 -march=..."
./configure --options-deLaMort
CFLAGS n'est pas pris en compte mais les options oui :
configure: Configured to build curl/libcurl:
curl version: 7.18.2
Host setup: i686-pc-mingw32
Install prefix: /usr/local
Compiler: gcc
SSL support: enabled (OpenSSL)
SSH support: no (--with-libssh2)
zlib support: enabled
krb4 support: no (--with-krb4*)
GSSAPI support: no (--with-gssapi)
SPNEGO support: no (--with-spnego)
c-ares support: no (--enable-ares)
ipv6 support: enabled
IDN support: no (--with-libidn)
Build libcurl: Shared=yes, Static=yes
Built-in manual: no (--enable-manual)
Verbose errors: enabled (--disable-verbose)
SSPI support: no (--enable-sspi)
ca cert bundle: no
ca cert path: no
LDAP support: enabled (winldap)
LDAPS support: no (--enable-ldaps)
2- Si dans mon script je met
cflags="CFLAGS=\"-O2\""
./configure --disable-debug --enable-ipv6 ${cflags}
Aucun paramètre n'est pris.
J'ai vérifié, et le mode -686 (sous la forme : host = i686-pc-mingw32; host_cpu = i686; host_os = mingw32) est bien pris en compte dans le makefile, donc je n'est pas besoins de le mentionner dans le CFLAGS.
Je me tâte à faire un :
cat makefile | awk '{ sub("CFLAGS = -g -O2","CFLAGS = -O2");print}' > ./makefile
Je suis pas sûr que ce soit le plus propre mais bon...
1- si dans mon script je met
CFLAGS="-O2 -march=..."
./configure --options-deLaMort
CFLAGS n'est pas pris en compte mais les options oui :
configure: Configured to build curl/libcurl:
curl version: 7.18.2
Host setup: i686-pc-mingw32
Install prefix: /usr/local
Compiler: gcc
SSL support: enabled (OpenSSL)
SSH support: no (--with-libssh2)
zlib support: enabled
krb4 support: no (--with-krb4*)
GSSAPI support: no (--with-gssapi)
SPNEGO support: no (--with-spnego)
c-ares support: no (--enable-ares)
ipv6 support: enabled
IDN support: no (--with-libidn)
Build libcurl: Shared=yes, Static=yes
Built-in manual: no (--enable-manual)
Verbose errors: enabled (--disable-verbose)
SSPI support: no (--enable-sspi)
ca cert bundle: no
ca cert path: no
LDAP support: enabled (winldap)
LDAPS support: no (--enable-ldaps)
2- Si dans mon script je met
cflags="CFLAGS=\"-O2\""
./configure --disable-debug --enable-ipv6 ${cflags}
Aucun paramètre n'est pris.
J'ai vérifié, et le mode -686 (sous la forme : host = i686-pc-mingw32; host_cpu = i686; host_os = mingw32) est bien pris en compte dans le makefile, donc je n'est pas besoins de le mentionner dans le CFLAGS.
Je me tâte à faire un :
cat makefile | awk '{ sub("CFLAGS = -g -O2","CFLAGS = -O2");print}' > ./makefile
Je suis pas sûr que ce soit le plus propre mais bon...
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
382
>
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
16 juin 2008 à 11:25
16 juin 2008 à 11:25
A ta place, je ne toucherais pas au CFLAGS, vu qu'il semble déjà correctement utilisé.
Mais bon cela dépends de la finalité de ton binaire.
Mais bon cela dépends de la finalité de ton binaire.
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
>
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
16 juin 2008 à 11:38
16 juin 2008 à 11:38
Ben le pb c'est que l'option -g du makefile reste même avec --disable-debug. Et du coup je me retrouve avec une compil debug de 15Mo.
Je me sert de la librairie statique pour intégrer cURL à une bibliothèque dynamique cette fois. Et je veut pas me retrouver avec une .dll ou .so de 50Mo en debug, alors que le release devrait atteindre 2Mo. C un peut gros pour être installé chez le client ^^, et c pas très propre.
Je me sert de la librairie statique pour intégrer cURL à une bibliothèque dynamique cette fois. Et je veut pas me retrouver avec une .dll ou .so de 50Mo en debug, alors que le release devrait atteindre 2Mo. C un peut gros pour être installé chez le client ^^, et c pas très propre.
marc[i1]
Messages postés
2573
Date d'inscription
vendredi 1 avril 2005
Statut
Contributeur
Dernière intervention
6 septembre 2008
382
16 juin 2008 à 11:57
16 juin 2008 à 11:57
De ce que je connais de curl, personne ne précise le mode debug, car il doit être désactivé par défaut.
Pour info, je te met deux méthodes de script, un pour ArchLinux :
et un pour Slackware :
Les deux fonctionnent parfaitement dans un script :)
Pour info, je te met deux méthodes de script, un pour ArchLinux :
./configure --prefix=/usr --without-libidn --disable-ldap \ --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt || return 1 make || return 1 make DESTDIR=${startdir}/pkg install || return 1
et un pour Slackware :
CFLAGS="-O2 -march=i486 -mtune=i686" \ ./configure \ --prefix=/usr \ --mandir=/usr/man \ make -j4 || exit 1 make install DESTDIR=$PKG || exit 1
Les deux fonctionnent parfaitement dans un script :)
kanar
Messages postés
20
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
19 septembre 2008
16 juin 2008 à 12:10
16 juin 2008 à 12:10
héhé ça marche !!!
j'avais pas capté qu'il fallait que ce soit sur la même ligne de commande ( y'avait pas le \ dans les message plus haut).
donc pour résumer :
CFLAGS="..." ./configure --options
ça marche ! Pardon ça fonctionne !!!
Merci beaucoup marc de m'avoir consacré du temps ;)
j'avais pas capté qu'il fallait que ce soit sur la même ligne de commande ( y'avait pas le \ dans les message plus haut).
donc pour résumer :
CFLAGS="..." ./configure --options
ça marche ! Pardon ça fonctionne !!!
Merci beaucoup marc de m'avoir consacré du temps ;)
16 juin 2008 à 10:20
$ ls curl-7.18.2
CHANGES aclocal.m4 configure install-sh mkinstalldirs
COPYING buildconf configure.ac lib packages
Makefile buildconf.bat curl-config libcurl.pc reconf
Makefile.am compile curl-config.in libcurl.pc.in sample.emacs
Makefile.in config.guess curl-style.el libtool src
README config.log depcomp ltmain.sh tests
RELEASE-NOTES config.status docs maketgz
acinclude.m4 config.sub include missing