2014-10-28 2 views
13

내가 아래이 오류를 인터넷 검색을 봤는데 설치,하지만 난이 오류를 해결할 수 : 루비 - 번들 중 오류가

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

    /usr/bin/ruby2.1 extconf.rb 
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h 

extconf failed, exit code 1 

Gem files will remain installed in /home/dyego/.bundler/tmp/9200/gems/sqlite3-1.3.9 for inspection. 
Results logged to /home/dyego/.bundler/tmp/9200/extensions/x86_64-linux/2.1.0/sqlite3-1.3.9/gem_make.out 
An error occurred while installing sqlite3 (1.3.9), and Bundler cannot continue. 
Make sure that `gem install sqlite3 -v '1.3.9'` succeeds before bundling. 
     run bundle exec spring binstub --all 
/usr/lib/ruby/vendor_ruby/bundler/resolver.rb:296:in `resolve': Could not find gem 'sqlite3 (>= 0) ruby' in the gems available on this machine. (Bundler::GemNotFound) 
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:168:in `start' 
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:129:in `block in resolve' 
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:128:in `catch' 
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:128:in `resolve' 
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:179:in `resolve' 
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:114:in `specs' 
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:159:in `specs_for' 
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:148:in `requested_specs' 
    from /usr/lib/ruby/vendor_ruby/bundler/environment.rb:18:in `requested_specs' 
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:13:in `setup' 
    from /usr/lib/ruby/vendor_ruby/bundler.rb:120:in `setup' 
    from /usr/lib/ruby/vendor_ruby/bundler/setup.rb:17:in `<top (required)>' 
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require' 

그래서 나는이 오류 봤 :

mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

Error while installing json gem 'mkmf.rb can't find header files for ruby'

하지만 이미 설치된 루비-DEV :

나는이 같은 몇 가지 비슷한 질문을 가지고
sudo apt-get install ruby-dev 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
ruby-dev is already the newest version. 
0 upgraded, 0 newly installed, 0 to remove and 72 not upgraded. 

저는이 문제를 해결하는 데 정말 어려움을 겪고 있습니다 (단순한 것으로 보이지만). SASS 개발을위한 나침반을 설치하려고 할 때 페도라에 유사한 오류가 있었다 2.1

$ sudo apt-get install ruby2.1-dev 
+0

'sudo apt-get install ruby2.1-dev'을 설치하려고 했습니까? – Alireza

+0

'gem install sqlite3 -v '1.3.9''를 실행하면 어떻게됩니까? – Anthony

+2

'rvm'을 사용하십시오. Ruby를 환경에 두지 마십시오. 프로젝트 전반에 걸쳐 서로 다른 버전의 Ruby를 사용하게 될 것이기 때문입니다. – blelump

답변

38

봅니다

gem install compass 

에 실패

네이티브 확장 기능. 시간이 좀 걸릴 수 있습니다 ... 오류 : 나침반 설치 오류 : 오류 : gem 네이티브 확장을 빌드하지 못했습니다.

는/usr/빈/루비 extconf.rb mkmf.rb이 /usr/share/include/ruby.h

에 루비에 대한 헤더 파일을 찾을 수 없습니다가 실행이

yum -y install gcc ruby-devel rubygems 

및 설치를 다시 성공적으로 실행할 수있었습니다.

+2

게으르다가 프로덕션 시스템이 아니라면'ruby-dev' 만 설치하면됩니다. 그리고 예, 버전 특이성에 필요한 추가 3자를 입력하는 것보다 제가이 의견에 더 많은 노력을 기울이고 있다는 것이 재미 있다는 것을 알고 있습니다. 나는 사회를 비난한다. –

+0

이제'ruby-2.3-dev'가되어야합니다. Debian 기반 배포판 (예 : Ubuntu, Mint)을 사용하고 있다면'apt-cache search "ruby. * - dev"'을 실행하여 패키지 이름을 알아낼 수 있습니다. – einpoklum

3

당신의 루비 버전의 ruby-dev 라이브러리를 설치하는

+0

'yum -y install ruby-devel'을 실행할 때'No package ruby-devel available .'을 얻습니다. 설치할 최신 패키지가 있습니까? –

+0

이것은 나침반을 설치하려고 할 때 도움이되는 대답입니다. 그러나 루비 젬은 필요하지 않았습니다. 방금 sudo 냠 루비 - devel gcc - y를 설치 사용 –

관련 문제