2012-10-05 1 views
5

J'ai essayé d'installer/compiler des bibliothèques C dans Windows 7 en utilisant Cygwin et MinGW. Cependant, je reçois des erreurs comme celles-ci pendant make:Installation/compilation dans Cygwin/MinGW - Comment définir le "chemin" d'inclusion? (lien symbolique?)

sys/resource.h: No such file or directory 
sys/times.h: No such file or directory 

Je pense qu'il pourrait déjà être un problème avec les bibliothèques spécifiques et demandé ici: Various issues installing igraph in Visual Studio 2010 and Cygwin/MinGW ("sys/time.h not found"), mais après avoir rencontré la même erreur avec différentes bibliothèques, je pense que le problème se trouve sur ma fin.

Tentative

cygwin/usr/include/sys/times.h et cygwin/usr/include/sys/resource.h existe. Après avoir obtenu des conseils concernant les liens symboliques, j'ai utilisé ln -s /usr/include/sys sys pour m'assurer que sys/times.h fonctionnait.

Je suis allé voir la sortie make pour une bibliothèque spécifique (igraph). Il dit qu'il est entré dans un dossier "src". Donc, je suis allé dans le dossier src et fait la même chose: ln -s /usr/include/sys sys et fait en sorte que sys/times.h a travaillé dans le dossier src aussi.

Cependant, je reçois toujours:

fatal error: sys/times.h: No such file or directory 

Question

Comment définir le "chemin" pour trouver make 'sys/times.h' ou d'autres fichiers dans le répertoire/usr/include/sys dossier? Qu'est-ce que j'oublie ici?

P.S.

Veuillez me supporter car je suis habituellement un utilisateur Windows et je ne suis pas familier avec la terminologie Linux.

Répondre

4

Après enquête beaucoup, le problème est avéré être que:

  1. MinGW n'a pas sys/times.h.
  2. Cygwin l'a, mais mon Cyqwin utilisait le gcc dans mon répertoire python , qui est gcc de MinGW.

Ceci a été découvert en essayant de résoudre un autre problème ici:

Cannot compile C code with #include <sys/times.h> in Cygwin

Il se trouve que mon problème n'a rien à voir avec le chemin d'inclusion ou de faire des liens symboliques, mais plutôt, la La version/le type de gcc était incorrect. Ce fait m'a échappé parce que je courais une installation propre de Cygwin et ne savais pas qu'il utiliserait automatiquement le gcc de MinGW dans mon dossier Python.

1

voir http://mail.kde.org/pipermail/kde-windows/2006-May/000194.html comme on dit, même si le times.h est mis là ses fonctions ne peut être mis en œuvre par MinGW

lors de l'exécution ./configure je reçois ce (il est difficile de remarquer) http://i49.tinypic.com/2q80pzk.png

donc d'abord essayer de copier le times.h puis utilisez ./configure et voir si cette erreur est pas là

+0

J'ai essayé ceci. "Erreur fatale: sys/times.h: Aucun fichier ou répertoire" à nouveau. :( – Legendre

+0

En ce qui concerne votre dernière suggestion: Le répertoire racine de MSYS semble être C: \ MinGW \ msys \ 1.0 et il n'y a pas moyen de revenir plus loin: Il y a un dossier "sys" dans 1.0 ou n'importe lequel de ses sous-dossiers. Je ne suis pas sûr maintenant de faire un "make -I \ path \ sys" comme dans ce thread.En outre, j'ai essayé d'exécuter "make -I \ usr \ include \ sys" dans Cygwin et MinGW mais toujours le même " sys \ times.h pas un tel fichier ou répertoire "problème – Legendre

+0

Essayé copying times.h à C: MinGW \ include mais ./configure dit encore sys/times.h convivialité ... non et présence ... non. possible d'obtenir/installer le contenu dans "sys" afin d'obtenir sys/times.h? – Legendre

0

Construire libigraph avec MinGW sans avoir « sys/times.h »

Ce peut être intéressant pour tous les bâtiments « igraph » et ne veulent pas créer avec « Cygwin » mais avec « MinGW » .

Dans mon environnement "msys/mingw", j'ai mon "code source" dans le répertoire "C: \ msys \ 1.0 \ src".
igraph dir. == C: \ msys \ 1.0 \ src \ igraph-0,6

  • Run c: \ msys \ 1.0 \ msys.bat
  • cd à la racine supérieure cd/
  • cd igraph cd usr/src/igraph-0,6
    note: Il n'y a pas de dossier usr dans C: \ msys \ 1.0 \. Attention, ne créez pas de dossier usr !!!
  • type ./configure Maintenant le shell msys regard quelque chose comme

Administrateur @ drserver-p /usr/src/igraph-0.6
$ ./configure

  • appuyez sur "Entrée"

il prend un wh ile.

Changement de fichiers.

  • goto igraph-0.6 \ src
  • Ouvrir avec Notepadd ++ ou un autre éditeur du "Makefile"
    Ligne Aller à 832 ou rechercher libf2c_la_CFLAGS =
    Mettre -DUSE_CLOCK après libf2c_la_CFLAGS =
    Maintenant il ressemble à libf2c_la_CFLAGS = -DUSE_CLOCK -DSkip_f2c_Undefs ....
  • Ouvrir igraph-0.6 \ src \ F2C \ uninit.c
  • Aller à la ligne 182 ou serach pour _control87 (EM_DENORMAL
    commentaire cette ligne /* _control87 (EM_DENORMAL ..... */
  • Ouvrir igraph-0.6 \ src \ f2c \ s_paus.c
    Aller à la ligne 84 ou rechercher pause();
    commenter cette ligne /* pause(); */

  • type font Maintenant, les msys coquille se ressemble quelque chose comme

Administrateur @ drserver-p /usr/src/igraph-0.6
$ font

  • appuyez sur "Entrée"

Si cela fonctionne, cela prend environ 1 heure!

Questions connexes