2012-09-23 11 views
70

Zainstalowałem Ruby on Rails na podstawie instrukcji z klasy edX online.Nie udało się zbudować natywnego rozszerzenia gem - Rails install

Oto lista komend terminalowych oraz, w stosownych przypadkach, odpowiednie wyjście:

$ sudo apt-get install ruby1.9.1 

instalacja udany

$ wget http://production.cf.rubygems.org/rubygems/rubygems-1.8.24.tgz 
$ tar zxvf ruby-1.8.24.tgz 
$ cd ruby-1..8.24 
$ sudo ruby setup.rb 
RubyGems 1.8.24 installed 

== 1.8.24/2012-04-27 

* 1 bug fix: 

    * Install the .pem files properly. Fixes #320 
    * Remove OpenSSL dependency from the http code path 


------------------------------------------------------------------------------ 

RubyGems installed the following executables: 
    /usr/bin/gem1.9.1 

Maksymalnie tutaj, wszystko wyglądało w porządku, ale starałem się zainstalować szyny i nie powiodły się:

$ sudo gem install rails 
Fetching: i18n-0.6.1.gem (100%) 
Fetching: multi_json-1.3.6.gem (100%) 
Fetching: activesupport-3.2.8.gem (100%) 
Fetching: builder-3.0.3.gem (100%) 
Fetching: activemodel-3.2.8.gem (100%) 
Fetching: rack-1.4.1.gem (100%) 
Fetching: rack-cache-1.2.gem (100%) 
Fetching: rack-test-0.6.1.gem (100%) 
Fetching: journey-1.0.4.gem (100%) 
Fetching: hike-1.2.1.gem (100%) 
Fetching: tilt-1.3.3.gem (100%) 
Fetching: sprockets-2.1.3.gem (100%) 
Fetching: erubis-2.7.0.gem (100%) 
Fetching: actionpack-3.2.8.gem (100%) 
Fetching: arel-3.0.2.gem (100%) 
Fetching: tzinfo-0.3.33.gem (100%) 
Fetching: activerecord-3.2.8.gem (100%) 
Fetching: activeresource-3.2.8.gem (100%) 
Fetching: mime-types-1.19.gem (100%) 
Fetching: polyglot-0.3.3.gem (100%) 
Fetching: treetop-1.4.10.gem (100%) 
Fetching: mail-2.4.4.gem (100%) 
Fetching: actionmailer-3.2.8.gem (100%) 
Fetching: rake-0.9.2.2.gem (100%) 
Fetching: rack-ssl-1.3.2.gem (100%) 
Fetching: thor-0.16.0.gem (100%) 
Fetching: json-1.7.5.gem (100%) 
Building native extensions. This could take a while... 
ERROR: Error installing rails: 
    ERROR: Failed to build gem native extension. 

     /usr/bin/ruby1.9.1 extconf.rb 
/usr/local/lib/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError) 
    from /usr/local/lib/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from extconf.rb:1:in `<main>' 


Gem files will remain installed in /usr/lib/ruby/gems/1.9.1/gems/json-1.7.5 for inspection. 
Results logged to /usr/lib/ruby/gems/1.9.1/gems/json-1.7.5/ext/json/ext/generator/gem_make.out 
+0

możliwe duplikat [Nie można zainstalować gem - udało się zbudować gem natywne rozszerzenia - nie można załadować taki plik - mkmf (LoadError)] (http://stackoverflow.com/questions/13767725/nie można zainstalować-gem-failed-to-build-gem-native-extension-can-load-like-takie) –

Odpowiedz

149

mkmf jest częściąPakiet. Ten pakiet zawiera pliki nagłówkowe potrzebne do bibliotek rozszerzeń dla Ruby 1.9.1. Trzeba zainstalować pakiet ruby1.9.1-dev wykonując:

sudo apt-get install ruby1.9.1-dev 

Następnie można zainstalować Rails jak za normalne.

Generalnie łatwiej jest po prostu zrobić:

sudo apt-get install ruby-dev 
+0

musiał napisać 'sudo apt-get install ruby1.9.1-dev' zamiast' sudo apt -Ustal instalację ruby1.9-dev'. W przeciwnym razie działało dobrze, dzięki. –

+0

Wielkie dzięki! Dostaję orzechy z kwestią zależności rb-inotify ... (z sass -watch) – jossemarGT

+0

Zrobiłem to i wciąż otrzymuję problem rb-inotify z sass -watch ... –

4

Sugerowana odpowiedź działa tylko w niektórych wersjach Ruby. Niektórzy komentatorzy sugerują używanie ruby-dev; to też nie zadziałało.

sudo apt-get install ruby-all-dev 

pracował dla mnie.

1
sudo apt-get install ruby-dev 

pracował dla mnie

Powiązane problemy