2015-10-27 2 views
4

Использование rbenv, установка пакета runnng и получение ошибки при установке Json 1.8.1.не может загрузить такой файл - mkmf (LoadError)

Building native extensions. This could take a while... 
ERROR: Error installing json: 
ERROR: Failed to build gem native extension. 

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

попытался установить рубиново-DEV через APT (не уверен, что поможет в любом случае, как было установлено рубин через rbenv)

вещи, которые могут помочь?

$ which gem 
/home/ubuntu/.rbenv/shims/gem 
$ which ruby 
/home/ubuntu/.rbenv/shims/ruby 
$ locate mkmf 
/home/ubuntu/.rbenv/versions/1.9.3-p484/lib/ruby/1.9.1/mkmf.rb 
/home/ubuntu/.rbenv/versions/1.9.3-p484/share/ri/1.9.1/system/Object/mkmf-i.ri 
/usr/local/rvm/gems/ruby-2.2.1/extensions/x86_64-linux/2.2.0/nokogiri-1.6.6.2/mkmf.log 
/usr/local/rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/mkmf.rb 

ответ

2

Основываясь на вашей команде найти, у вас есть mkmf в РВМ и в домашнем diretory Ubuntu, но не в системе, и вы явно с помощью рубин системы (и не rbenv или РВМ), чтобы запустить extconf .rb. Либо запустите рубин из одной из сред, в которой у вас установлен mkmf, либо установите пакет ruby-dev в систему.