J'ai installé Cygwin après avoir exécuté MinGW pendant un moment. Mais quand j'essaye de compiler la console, ça me donne:
/usr/lib/gcc/x86_64-pc-cygwin/4.9.2/cc1.exe: error while loading shared libraries: ?: cannot open shared object file: No such file or directory
Qu'est-ce que ça veut dire?
J'ai le même problème et j'ai trouvé la solution.
Selon la FAQ de Cygwin
Q: Pourquoi C:\cygwin\usr\bin est-il invisible à partir de Windows?
R: Parce que il n’existe pas vraiment . En cygwin,/usr/bin est simplement un lien vers/bin.
Donc, essayer d'ajouter "C:\cygwin\usr\bin" à PATH sera en vain.
Ajoutez "C:\cygwin64\bin" à PATH à la place. J'espère que cela t'aides :)
Il vous manque une bibliothèque, veuillez exécuter cygcheck /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/cc1.exe
ou ldd /usr/lib/gcc/x86_64-pc-cygwin/4.9.2/cc1.exe
pour voir quelle est la bibliothèque manquante.
Ajout de quelques informations de fond. J'ai eu le même problème en construisant mon propre programme et en le liant contre graphviz cgraph.dll. Il s’avère que cela est lié aux endroits où Windows cherche les DLL (voir ici: https://msdn.Microsoft.com/en-us/library/7d83bc18.aspx ) Donc, ajouter le chemin de votre bibliothèque manquante à PATH devrait résoudre le problème.
Il est regrettable que le message n'inclue pas le nom de la bibliothèque. Heureusement, cmd.exe vous donne ce nom (donc c'est bon pour quelque chose après tout;)
Très probablement, il vous manque simplement/usr/bin dans la variable PATH. Ajouter 'export PATH =/usr/bin: $ PATH' à votre fichier .bashrc résoudra le problème.
Je suis également venu cette erreur sur la machine Windows en exécutant le fichier .exe
généré par scilab2C
i.e toolbox pour Scilab
Pour Windows 32 bit
Ajoutez le chemin de la variable d'environnement comme suit:
C:\cygwin\usr\i686-pc-cygwin\bin
J'espère que cela résoudra votre problème.
Incluez-vous le chemin d'accès à votre répertoire lib? On dirait que vous n'êtes pas
Je ne connais pas très bien Cygwin, j'utilise principalement MinGW, mais je pense que le message d'erreur est éloquent.
(Je préférerais d'abord poser une question dans les commentaires, mais je n'ai pas encore assez de réputation.)
Votre cc1
est incapable de charger certaines DLL dont il a besoin pour démarrer. En examinant le code source de Cygwin, il peut s'agir d'une bibliothèque spécifiée dans LD_PRELOAD
ou, plus probablement, d'une bibliothèque dont dépend l'exécutable. Le ?
dans le message d'erreur semble être la valeur de retour par défaut de find_first_notloaded_dll
(hookapi.cc
), au cas où la fonction ne pourrait pas déterminer quelle bibliothèque est manquante.
Pour diagnostiquer le problème, je suggère de vérifier votre variable PATH
(ou même de l'effacer de tout chemin non Cygwin et d'essayer de nouveau la compilation) et/ou d'utiliser Dependency Walker pour trouver les DLL manquantes (démarrez-le à partir d'un shell Cygwin , donc il peut voir la même PATH
). ldd
(fourni avec Cygwin) peut également donner des indices, mais je ne parierais pas dessus.
Il est possible qu'une réinstallation propre de Cygwin soit nécessaire pour résoudre le problème.