Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications
Applications Questions sur l'utilisation d'applications, du shell, et des interfaces graphiques (KDE, Gnome, XFCE... )
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2007, 14h08   #1
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Par défaut Cygwin et installation de lib

Bonjour, j'ai installé cygwin afin de pouvoir installer une librairie graphique c++
mais je n'arrive pas à l'installer ... le ./configure s'arrête rapidement avec l'erreur : "C compiler cannot create executables"

Si quelqu'un pouvait m'aider à installer cette librairie ca serait vraiment très gentil
C'est la librairie vigra disponible ici http://kogs-www.informatik.uni-hambu...igra/#download
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2007, 12h32   #2
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
Bonjour, j'ai installé cygwin afin de pouvoir installer une librairie graphique c++
mais je n'arrive pas à l'installer ... le ./configure s'arrête rapidement avec l'erreur : "C compiler cannot create executables"

Si quelqu'un pouvait m'aider à installer cette librairie ca serait vraiment très gentil
C'est la librairie vigra disponible ici http://kogs-www.informatik.uni-hambu...igra/#download
Bonjour,

pourrais-tu nous mettre les quelques lignes (une petite dizaine au moins) qui apparaisse avant que ton ./configure se termine ? Car l'erreur peut venir de plusieurs endroit (genre que tu n'ai carément pas de compilateur [gcc] d'installé).
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2007, 20h01   #3
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
J'me place dans le repertoire vigra1.5.0 crée en décompressant le pack vigra1.5.0.tar.gz
Ensuite je tape
./configure --prefix=/your/install/path --exec-prefix=/your/bin/install/path
--with-cc=gcc --with-cxx=g++
--with-jpeg=/path/to/libjpeg/installation
--with-tiff=/path/to/libtiff/installation
--with-png=/path/to/libpng/installation
--with-zlib=/path/to/zlib/installation
--with-fftw=/path/to/libfftw/installation

Et on me dit :
configuring VIGRA 1.5.0
checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking target system type... i686-pc-cygwin
checking for gcc... gcc
checking for C compiler default output file name... configure : error: C compiler cannot create executables
See 'config.log' for more details.

Voilà, je précise que j'y connais rien
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2007, 23h13   #4
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
./configure --prefix=/your/install/path --exec-prefix=/your/bin/install/path
--with-cc=gcc --with-cxx=g++
--with-jpeg=/path/to/libjpeg/installation
--with-tiff=/path/to/libtiff/installation
--with-png=/path/to/libpng/installation
--with-zlib=/path/to/zlib/installation
--with-fftw=/path/to/libfftw/installation
Tu as mis littéralement /your/install/path ?!??

Sinon, qu'y a-t-il en fin du fichier config.log ? A priori, ce n'est pas la peine de préciser -with-cc et --with-cxx, il fait la recherche tout seul. Et si ils sont précisé, à mon avis, il faut leur chemin absolu. Il en va de même pour les --prefix et --exec-prefix, il y a un comportement par défaut qui, à priori, n'est pas à changer, sauf cas extrème (en faisant de la 'cross-compilation' pour une certaine source).

Normalement, surtout sous cygwin (à contrario de msys par exemple), les librairies, et les compilateurs sont installé aux endroits standard. Un conseil en passant, toujours tenter un ./configure -h pour voir toutes les options possible, mais garder la ligne de commande la plus simple dans les cas non extrème. Les scripts configure (très souvent généré par autoconf) sont assez intelligent pour retrouver leurs petits, et sinon, ajouter les options qui vont bien.

Les options --prefix et --exec-prefix, permette de dire au Makefile ainsi généré d'installer les fichier au chemin donné par l'option --prefix, et les executables au chemin donné par l'option --exec-prefix. (Sachant que par exemple je dis --prefix=/home/bibi, il installera les executables dans /home/bibi/bin, les configuration dans /home/bibi/etc/, et ainsi de suite)..

voilà voilà
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 00h07   #5
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
"Tu as mis littéralement /your/install/path ?!??"
Malheureusement oui ...
Mon répertoire est C:\cygwin\home\Fred\vigra1.5.0
Que dois je donc mettre ? je sais qu'il faut changer path mais le your et le install ?? Je n'y connais rien, j'suis désolé, j'ai un peu honte.

En tout cas je voudrais d'ors et deja te remercier !
Je te mettrais le fichier config.log ensuite si ca peut servir
Mais la première chose à faire est surement de changer ce que j'ai mis, tu dois rigoler !
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 08h44   #6
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
"Tu as mis littéralement /your/install/path ?!??"
Malheureusement oui ...
Mon répertoire est C:\cygwin\home\Fred\vigra1.5.0
Que dois je donc mettre ? je sais qu'il faut changer path mais le your et le install ?? Je n'y connais rien, j'suis désolé, j'ai un peu honte.

En tout cas je voudrais d'ors et deja te remercier !
Je te mettrais le fichier config.log ensuite si ca peut servir
Mais la première chose à faire est surement de changer ce que j'ai mis, tu dois rigoler !
Je ne vais pas m'auto-citer, mais, tu as essayé le ./configure sans rien ? Je ne peux pas te dire quel chemin il faut mettre pour chaque prefix, car je n'ai aucune idée du schéma d'installation que tu veux 'adopter'. J'entends par là, où veux-tu que ta librairie (qui se traduira par un fichier xxx.so [à priori, encore que sous cygwin je sais pas trop]) soit installé. Habituellement on laisse par défaut sans rien précisé, mais je ne sais pas quel est ton besoin la dessus.

Imagions que nous voulions le mettre dans c:\librairie. Cygwin fonctionne comme Unix, c'est à dire qu'il n'y a pas de concept de c:, h:, etc.. mais qu'il y a une racine / et des répertoires fils. Sous Unix, tout est répertoire (même les différentes partitions, que windows représente comme des disques séparé c:\). malheuresement je n'utilise pas cygwin mais msys+mingw, mais il me semble que cygwin procede de la même façon : le disque c: est représenté par /c/, le répertoire c:\librairie par /c/librairie. Par contre les dossiers qui sont dans le répertoire cygwin sont pris en charge différement : C:\cygwin\home\Fred\vigra1.5.0 se traduit par /home/Fred/vigra1.5.0 (donc c:\cygwin\ par / il se peut).

Donc essaye de procéder par étape. Si tu sais exactement où tu veux installer ta librairie, tu précises l'option --prefix, sinon tu laisse par défaut (sans préciser). Ensuite tu fais des ./configure du plus simpe au plus compliqué, c'est à dire que tu commences en précisant le moins d'options possible, il se peut que gcc, g++ et autres (les librairies) soient déjà au bon endroit, ou en tout cas à "l'endroit" par défaut. Si tu obtient des erreurs, elles seront suffisament précise (ou sinon, forum ) pour savoir quelle option précisé alors.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 13h07   #7
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Le ./configure sans rien me sort exactement pareil sur la console :

configuring VIGRA 1.5.0
checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking target system type... i686-pc-cygwin
checking for gcc... gcc
checking for C compiler default output file name... configure : error: C compiler cannot create executables
See 'config.log' for more details.
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 13h32   #8
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
Le ./configure sans rien me sort exactement pareil sur la console :

configuring VIGRA 1.5.0
checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking target system type... i686-pc-cygwin
checking for gcc... gcc
checking for C compiler default output file name... configure : error: C compiler cannot create executables
See 'config.log' for more details.
Hum.. si tu lance la commande "gcc -v" ça te sort quelque chose, ou .. ?

Sinon, la fin du config.log peut peut-être nous aider.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 13h51   #9
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
J'ai tapé "gcc -v" :;

$gcc -v
bash : gcc: command not found

Je t'envoie le fichier config.log en mp
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 13h58   #10
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
J'ai tapé "gcc -v" :;

$gcc -v
bash : gcc: command not found

Je t'envoie le fichier config.log en mp
Donc tu n'as tout simplement pas de compilateur installé, donc tu ne peux rien compiler .

Il faut que tu redémarres l'executable d'installation de cygwin, que tu cherches les 'paquets' gcc la dedans (il devrait sélectionner les dépendances avec), et que tu l'installes, sans quoi, pas de compilation, ça ne marchera jamais

voilà voilà, après avoir install gcc, retentre, ça devrait déjà aller mieux (mais pas encore à l'abris d'erreur ).
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 15h17   #11
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Ok, j'ai fait ce que tu as dit, j'ai carrément mis tous les packages possibles ... j'ai de la place sur le DD donc je m'en prive pas
Je ressaie après et te tiens au courant
Merci beaucoup pour l'aide
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 15h24   #12
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
Ok, j'ai fait ce que tu as dit, j'ai carrément mis tous les packages possibles ... j'ai de la place sur le DD donc je m'en prive pas
Je ressaie après et te tiens au courant
Merci beaucoup pour l'aide
C'est un peu bourrin, m'enfin

Comme je l'ai dis précédement, normalement les erreurs sont assez compréhensible (genre "XXXX library missing"), il est alors souvent facile de récupérer ses oeufs au final. Maintenant, si tu installes tous les packages possible, il ne devrait pas y avoir d'erreur de ce genre.. espérons
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h01   #13
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Bon alors après un plantage, j'ai finalement décider un seul package "devel" contenant entre autres un compilateur gcc.

J'ai fait un ./configure qui a bien marché puis
>make
>make test
>make install
>make examples

qui ont tous réussis ... je ne sais pas trop à quoi ca sert mais ça a créé des répertoires... dans mon répertoire vigra1.5.0

J'ai tapé cela car c'est écrit sur cette page http://kogs-www.informatik.uni-hambu...tallation.html

Mais j'ai maintenant un autre souci, est-ce bien installé car j'essaie de compiler un exemple et j'ai des erreurs ...

Je vais peut etre t'en demander bcp, et j'en suis désolé, mais si tu as la possibilité d'installer cette librairie chez toi, et me dire si les exemples marchent, je t'en serai vraiment reconnaissant. J'ai besoin de cette librairie pour un programme de traitement d'image, je ne peux rien faire sans
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h10   #14
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
Bon alors après un plantage, j'ai finalement décider un seul package "devel" contenant entre autres un compilateur gcc.

J'ai fait un ./configure qui a bien marché puis
>make
>make test
>make install
>make examples

qui ont tous réussis ... je ne sais pas trop à quoi ca sert mais ça a créé des répertoires... dans mon répertoire vigra1.5.0

J'ai tapé cela car c'est écrit sur cette page http://kogs-www.informatik.uni-hambu...tallation.html

Mais j'ai maintenant un autre souci, est-ce bien installé car j'essaie de compiler un exemple et j'ai des erreurs ...

Je vais peut etre t'en demander bcp, et j'en suis désolé, mais si tu as la possibilité d'installer cette librairie chez toi, et me dire si les exemples marchent, je t'en serai vraiment reconnaissant. J'ai besoin de cette librairie pour un programme de traitement d'image, je ne peux rien faire sans
Un peu beaucoup . Disons surtout que je n'ai pas cygwin au boulot (mais je pourrais peut être tenter ça ce soir en rentrant du boulot).

Quand tu essayes de compiler un exemple, tu exécute quelle commande ? Quelles sont les erreurs ? (quel est le code ?). Sans ces quelques précisions, je vais difficielement pouvoir t'aider.

ps : quels sont les répertoires qui ont été créé par les différentes étapes que tu as suivis ? ()
__________________
Linux/Unix, Emacs and Free Software are evil
GNU/Linux & FreeBSD powered user.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h30   #15
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Tu es vraiment trop gentil

Alors j'ai mon repertoire /home/vigra1.5.0 dans lequel il y avait principalement 5 répertoires qd je l'ai décompressé : config, doc, include, src et test.
A la suite de mes manipulations se sont ajoutés :
un repertoire bin contenant un fichier vigra-config
et un repertoire bin contenant 2 fichiers : libvigraimpex.a et libvigraimpex.la

Mais les autre répertoires ont été modifiés aussi.
J'ai par exemple dans le repertoire tes un sous repertoire "morphology" qui contenait 4 fichiers : test.cxx makefile.in morphology.vcproj et .cvsignore
Maintenant se sont ajoutés makefile, test.o test.d et test.exe

Sinon qd je compile un exemple, je fais g++ convert.cxx (j'utilise g++ car j'ai cru voir en cherchant qu'il fallait utiliser g++ et non pas gcc pour compiler du code c++)

J'ai placé mon fichier convert.cxx dans le repertoire vigra1.5.0 ... qd je comppile, j'ai plein d'erreurs, malheureusement pas moyen de copier coller le flux de sortie de la console cygwin, je ne sais pas comment faire pour te le transmettre :/ .. s'il existe un moyen je t'envoie ca et le code src convert.cxx
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h42   #16
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
J'obterais plutôt pour la ligne de commande suivante alors pour la compilation.

Code :
g++ -I. -I/chemin/vers/vigra/include/ -o convert.o -c convert.cxx
ça c'est pour la compilation, avec le linkage. Bien entendu, à la place de /chemin/vers/vigra/include, il te faut le chemin (absolue ou relatif) vers ce répertoire. Imaginons que ton répertoire de travail est /home/toto/tes/ et que le répertoire de vigra est /home/toto/vigra, alors la ligne de commande ressemble à g++ -I. -I../vigra/include -o convert.o -c convert.cc.

Ensuite, il faut linker pour générer ton exécutable, je pense que vigra-config peut te permettre de récupérer les FLAGS (les -I/.../.../ et les -L/../..) adéquate. Mais la ligne de commande pour le link ressemblera de loin à :

Code :
g++ -L. -L/le/rep/de/vigra/bin -lvigra -c convert.exe convert.o
Bien entendu, je ne suis pas sur pour le -lvigra, il faut regarder dans la doc quel nom il a
__________________
Linux/Unix, Emacs and Free Software are evil
GNU/Linux & FreeBSD powered user.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 15h57   #17
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Alors j'ai compiler avec :

g++ -I. -I/home/toto/vigra1.5.0/include -o convert.o -c convert.cxx

aucune erreur de générer, c'est retourner au prompt et j'ai un fichier convert.o

en revanche lorsque je fais

g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -c convert.exe convert.o

on me dit .. g++:convert.exe : no such file or directory

P.S : je t'ai envoyé fichiers en mp qui peuvent aider pour le linkage... moi je ne sais pas trop déchiffrer ces choses là, j'en suis désolé :s
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h23   #18
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -c convert.exe convert.o

on me dit .. g++:convert.exe : no such file or directory

P.S : je t'ai envoyé fichiers en mp qui peuvent aider pour le linkage... moi je ne sais pas trop déchiffrer ces choses là, j'en suis désolé :s
J'ai encore fumé (ça doit être le fait d'être dans une impasse au boulot avec des réfrences croisée et des templates)..

Code :
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -o convert.exe convert.o
-o comme output, et pas -c comme compile ... La fatigue
__________________
Linux/Unix, Emacs and Free Software are evil
GNU/Linux & FreeBSD powered user.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h33   #19
Invité de passage
 
Inscription : juillet 2007
Messages : 62
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 62
Points : 1
Points : 1
Et dire que j'ai failli essayer avec -o !

Enfin j'ai donc fait
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -o convert.exe convert.o
je reçois :
et on me dit :
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld : cannot find -lvigra
collect2 : ld returned 1 exit status

j'ai essayé
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigraimpex -o convert.exe convert.o

/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld : cannot find -lvigraimpex
collect2 : ld returned 1 exit status

P.S. : bon courage pour te sortir de l'impasse... si seulement je pouvais t'aider mais je ne vaut rien en programmation, c'est pour ça que je quémande de l'aide sur le forum
Far_Away est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h40   #20
Membre habitué
 
Avatar de vdemeester
 
Inscription : mai 2003
Messages : 110
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mai 2003
Messages : 110
Points : 108
Points : 108
Citation:
Envoyé par Far_Away
Et dire que j'ai failli essayer avec -o !

Enfin j'ai donc fait
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -o convert.exe convert.o
je reçois :
et on me dit :
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld : cannot find -lvigra
collect2 : ld returned 1 exit status

j'ai essayé
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigraimpex -o convert.exe convert.o

/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld : cannot find -lvigraimpex
collect2 : ld returned 1 exit status

P.S. : bon courage pour te sortir de l'impasse... si seulement je pouvais t'aider mais je ne vaut rien en programmation, c'est pour ça que je quémande de l'aide sur le forum
Alors, et -lm ? Sinon, faudra attendre que je test chez moi..
__________________
Linux/Unix, Emacs and Free Software are evil
GNU/Linux & FreeBSD powered user.
vdemeester est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h27.


 
 
 
 
Partenaires

Hébergement Web