|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#2 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
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é). |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#4 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
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à |
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
"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 ! |
|
|
00
|
|
|
#6 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
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 |
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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. |
|
|
00
|
|
|
#8 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
Sinon, la fin du config.log peut peut-être nous aider. |
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
J'ai tapé "gcc -v" :;
$gcc -v bash : gcc: command not found Je t'envoie le fichier config.log en mp |
|
|
00
|
|
|
#10 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
.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 ).
|
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#12 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
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
|
|
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#14 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
Quand tu essayes de compiler un exemple, tu exécute quelle commande ? Quelles sont les erreurs ? (quel est le code 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. ![]()
|
|
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#16 |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
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 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
__________________
Linux/Unix, Emacs and Free Software are evil GNU/Linux & FreeBSD powered user. ![]()
|
|
|
00
|
|
|
#17 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 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 |
|
|
00
|
|
|
#18 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
Code :
g++ -L. -L/home/toto/vigra1.5.0/bin -lvigra -o convert.exe convert.o
__________________
Linux/Unix, Emacs and Free Software are evil GNU/Linux & FreeBSD powered user. ![]()
|
|
|
|
00
|
|
|
#19 |
|
Invité de passage
![]() Inscription : juillet 2007 Messages : 62 ![]() |
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 |
|
|
00
|
|
|
#20 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 110 ![]() |
Citation:
__________________
Linux/Unix, Emacs and Free Software are evil GNU/Linux & FreeBSD powered user. ![]()
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com