2011-10-15 12 views
12

Robię instalację pakietu, a wszystkie klejnoty działają dobrze, z wyjątkiem JSON, gdy dostaną się do klejnotu JSON, który otrzymuję ten błąd.Nie mogę zainstalować klejnotu JSON w szynach przy użyciu okna

Installing json (1.6.1) with native extensions c:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:55 
    2:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::E 
    xtensionBuildError) 

      c:/Ruby192/bin/ruby.exe extconf.rb 
    checking for re.h... *** extconf.rb failed *** 
    Could not create Makefile due to some reason, probably lack of 
    necessary libraries and/or headers. Check the mkmf.log file for more 
    details. You may need configuration options. 

Każdy pomysł na przyczynę tego błędu?

Odpowiedz

4

To dlatego, że ten klejnot używa fragmentu kodu napisanego na C. Do poprawnego działania potrzebujesz c kompilatora zainstalowanego na twoim komputerze. Jako sposób, spróbuj użyć json_pure napisany na czystym Ruby

16

pracujesz z Windows, więc RubyInstaller Development Kit mogą pomóc: http://rubyinstaller.org/add-ons/devkit/

devkit instaluje kompilator C (i kilka innych rzeczy) do kompilowania części napisanych w języku C.

Zainstaluj i spróbuj ponownie, aby zainstalować klejnot - być może z opcją --platform=ruby.

Szczegóły można znaleźć na stronie https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

+5

To jest prawidłowa odpowiedź, ale należy zrobić gem lub zaktualizować --system będzie nadal masz problemy z rubyinstaller – pguardiario

+1

Nicea, rozwiązał mój problem DevKit +1 – a5his

+2

Istnieje nawet instalator Chocolatey NuGet dla devkit! http://chocolatey.org/packages/ruby.devkit – mcandre

0

Nie jestem ekspertem w ROR, ale problem instalacja JSON, które mam przy instalacji Redmine został rozwiązany, wykonując następujące czynności:

  • Stwórz markę bat na D: \ langs \ MinGW \ bin
  • zachować ten katalog w PATH
  • edytować powyżej make.bat i dodać linię D: \ langs \ MinGW \ Msys \ 1.0 \ bin \ make.exe

Uświadomiłem sobie, że mingw32-make.exe nigdy nie działało, ale działało "D: \ LANGS \ MinGW \ msys \ 1.0 \ bin \ make.exe".

Uwaga: Moja instalacja MinGW jest pod D: \ LANGS \. Dokonaj odpowiednich zmian w swojej konkretnej instalacji.

-1

Tak, zainstaluj zestaw programistyczny. Musisz również uruchomić kilka linii poleceń, aby go zainstalować (nie tylko po prostu pobierz i uruchom).

Pobierz, uruchom, aby go gdzieś wyodrębnić (na stałe). Następnie przejdź do niego, uruchom plik ruby ​​dk.rb init i ruby ​​dk.rb, aby powiązać go z instalacjami ruby ​​na twojej ścieżce.

Przewodnik dla że jest tutaj:

https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

Powiązane problemy