2013-10-08 9 views
6

Próbuję zainstalować win32-api klejnot na moim komputerze i jestem stoją pewne problemy podczas budowy rodzimych rozszerzeń:Błąd instalacji gem: nie można zarezerwować miejsca na stercie Cygwin, w błędzie Win32 487

$ gem install win32-api --no-ri --rdoc 
Temporarily enhancing PATH to include DevKit... 
Building native extensions. This could take a while... 
C:\Programs\dev_kit\bin\make.exe: *** Couldn't reserve space for cygwin's heap, Win32 error 0 
ERROR: Error installing win32-api: 
     ERROR: Failed to build gem native extension. 

     c:/Programs/ruby/bin/ruby.exe extconf.rb 
checking for strncpy_s()... no 
creating Makefile 

make 
     0 [main] us 0 init_cheap: VirtualAlloc pointer is null, Win32 error 487 
AllocationBase 0x0, BaseAddress 0x60E90000, RegionSize 0x170000, State 0x10000 
C:\Programs\dev_kit\bin\make.exe: *** Couldn't reserve space for cygwin's heap, Win32 error 0 

ten Problem pojawia się podczas instalowania dowolnego klejnotu, który próbuje skompilować rozszerzenie natywne, na przykład json lub win32-api.

Próbowałem już zmienić rozmiar pamięci wirtualnej tego komputera, ale to nie zadziałało.

Moja konfiguracja:

  • Ruby version: wersja 1.8.7p371
  • Gem: 1.8.24
  • Bash 3.1.0
  • DevKit 4.5.2
  • Windows 7 x64
+0

Jeśli to nie przeszkadza przyszłym ludziom upadającym przy tym pytaniu, spróbuj najpierw ponownie uruchomić komputer. Zakończyłem odinstalowywanie/ponowną instalację i przychodzenie do tego samego błędu ... 1 restart, wszystko naprawione. Inne podobne pytanie: http://stackoverflow.com/questions/18502999/git-extensions-win32-error-487-couldnt-reserve-space-for-cygwins-heap-win32/31970708#31970708 –

Odpowiedz

12

Miałem do czynienia z dokładnie ten sam problem i po wielu wyszukiwań i wielu różnych wynajem stara, to co stałe to dla mnie:

  1. Pobierz rebase z http://www.tishler.net/jason/software/rebase/ (pobierz najnowszą wersję * .exe) i uruchom go.

  2. odpalić Prompt („Uruchom jako administrator”) i przejdź do folderu dev-kit (na przykład, mój był C:\Programs\dev_kit)

  3. Choć w folderze devkit uruchom devkitvars.bat dodać devkit do ścieżka.

  4. teraz zrobić cd bin (to mnie do C:\Programs\dev_kit\bin), a stamtąd uruchomić:

    rebase -b 0x30000000 msys-1.0.dll 
    

Spróbuj ponownie zainstalować klejnotów. Zamiast wyświetlać komunikat o błędzie, teraz powinieneś zobaczyć Building native extensions. This could take a while..., który zawiesi się na chwilę.

Twój klejnot powinien zostać zainstalowany po kilku minutach/sekundach. Koniec z bólami głowy :)

+2

Dla mnie w devkit bin katalog, administrator propmt nie rozpoznaje "rebase" ... – user1364684

+0

Po uruchomieniu tego oryginalny problem zniknął, ale wtedy zaczęły pojawiać się błędy zawierające "*** docelowy wzór nie zawiera"% "". Najłatwiejszą okazało się obniżenie wersji RubyGems za pomocą 'gem update --system 2.3.0'. Szczegóły [tutaj] (https://github.com/rubygems/rubygems/issues/977). – dmccabe

+0

Powoduje to błędy dotyczące "braku pliku cygwin1.dll na twoim komputerze" podczas próby uruchomienia rebase ... –

Powiązane problemy