2012-10-05 3 views
5

Próbowałem zainstalować/kompilować biblioteki C w Windows 7 używając Cygwin i MinGW. Jednak ja dostaję takie błędy podczas make:Instalacja/kompilacja w Cygwin/MinGW - Jak ustawić "ścieżkę" do pliku włączającego? (symboliczny link?)

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

I wcześniej, że może to być problem z poszczególnych bibliotek i poprosił tutaj: Various issues installing igraph in Visual Studio 2010 and Cygwin/MinGW ("sys/time.h not found"), ale po napotkaniu ten sam błąd z różnych bibliotek, myślę, że problem leży na moim końcu.

Próba

cygwin/usr/include/sys/times.h i cygwin/usr/include/sys/resource.h istnieje. Po uzyskaniu porady dotyczącej dowiązań symbolicznych użyłem ln -s /usr/include/sys sys, aby upewnić się, że zadziałało sys/times.h.

Poszedłem do wyjścia make dla konkretnej biblioteki (igraph). Mówi, że wszedł do folderu "src". Więc poszedłem do folderu src i zrobiłem to samo: ln -s /usr/include/sys sys i upewniłem się, że sys/times.h działało również w folderze src.

Jednak ja wciąż się:

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

Pytanie

Jak mogę ustawić "ścieżka" dla make znaleźć 'sys/times.h' lub inne pliki w/usr/include/sys folder? Czego tu mi brakuje?

P.S.

Proszę o wyrozumiałość, ponieważ zazwyczaj jestem użytkownikiem systemu Windows i nie znam terminologii linuksowej.

Odpowiedz

4

Po wielu badań, problem okazał się, że:

  1. MinGW nie ma sys/times.h.
  2. Cygwin ma to, ale mój Cyqwin korzystał z gcc w moim pytonie katalogu, który jest gcc MinGW.

ta została odkryta podczas gdy próbuje rozwiązać inny problem tutaj:

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

Tak więc okazuje się, że mój problem nie miał nic wspólnego ze ścieżką włączenia lub dokonywania dowiązania symboliczne, ale raczej Wersja/typ gcc była błędna. Ten fakt umykał mi, ponieważ przeprowadziłem czystą instalację Cygwin i nie wiedziałem, że automatycznie użyje gcc MinGW w moim folderze Pythona.

1

zobaczyć http://mail.kde.org/pipermail/kde-windows/2006-May/000194.html jak mówią nawet jeśli times.h jest umieścić tam jego funkcje nie mogą być realizowane przez MinGW

podczas uruchamiania ./configure Dostaję to (jego trudne do wypowiedzenia) http://i49.tinypic.com/2q80pzk.png

więc spróbuj najpierw kopiując times.h a następnie użyj ./configure i sprawdzić, czy błąd ten nie jest tam

+0

Wypróbowałem to. "błąd krytyczny: sys/times.h: Nie ma takiego pliku lub katalogu" ponownie. :( – Legendre

+0

Jeśli chodzi o twoją ostatnią sugestię: Katalog główny MSYS wydaje się być C: \ MinGW \ msys \ 1.0 i nie ma sposobu, aby powrócić dalej.Tutaj jest folder "sys" w 1.0 lub dowolnym z jego podfolderów. Nie jestem pewien, czy teraz zrobić "make -I \ path \ sys" jak w tym wątku.Ponadto faktycznie próbowałem uruchomić "make -I \ usr \ include \ sys" zarówno w Cygwin i MinGW, ale nadal uzyskać takie same " sys \ times.h nie ma takiego pliku lub katalogu "problem – Legendre

+0

Próba kopiowania times.h do C: MinGW \ include ale ./configure nadal mówi sys/times.h użyteczność ... no i obecność ... nie. możliwe do uzyskania/zainstalowania rzeczy w "sys" właściwych, aby uzyskać sys/times.h? – Legendre

0

Budowa libigraph z MinGW, bez konieczności „SYS/times.h”

To może być interesujące dla wszystkich budowlanego „igraph” i nie chcą, aby go utworzyć z „Cygwin”, ale z „MinGW” .

W moim środowisku "msys/mingw" mam "kod źródłowy" w katalogu "C: \ msys \ 1.0 \ src".
igraph reż. == C: \ Msys \ 1.0 \ src \ igraph-0,6

  • Run c: \ Msys \ 1.0 \ msys.bat
  • cd do górnej korzenia CD/
  • cd do igraph cd usr/src/igraph-0,6
    Uwaga: Nie ma usr folder C: \ Msys \ 1.0 \. Uważaj, nie twórz folderu usr !!!
  • Rodzaj ./configure Teraz Msys shell wyglądać

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

  • hit "Enter"

zajmuje to ile.

Zmiana plików.

  • goto igraph-0.6 \ src
  • Otwórz z Notepadd ++ lub innego edytora z "Makefile"
    Goto linia 832 lub poszukać libf2c_la_CFLAGS =
    Put -DUSE_CLOCK po libf2c_la_CFLAGS =
    Teraz wygląda na to, że libf2c_la_CFLAGS = -DUSE_CLOCK -DSkip_f2c_Undefs ....
  • Otwarte igraph-0.6 \ src \ f2c \ uninit.c
  • Goto Linia 182 lub serach dla _control87 (EM_DENORMAL
    komentarzu tej linii /* _control87 (EM_DENORMAL ..... */
  • Otwórz igraph-0.6 \ src \ f2c \ s_paus.c
    Przejdź do linii 84 lub wyszukaj pauza();
    skomentuj tę linię /* pauza(); */

  • Rodzaj zrobić Teraz Msys shell wyglądać

Administrator @ drserver-p /usr/src/igraph-0.6
$ uczynić

  • hit "Enter"

Jeśli to działa, to trwa około 1 godziny!

Powiązane problemy