2012-06-26 6 views
0

Можно создать дубликат:
Debugging in ruby 1.9камень установить рубиново-debug19 терпит неудачу

Я не могу установить рубиново-debug19. Я пытался следовать http://isitruby19.com/linecache19 НО didnot помочь мне я последовал за шагами в Installing Gems without rvm, as root, with explicit version of ruby , что также не помогло

====================== ================

> [email protected]:/# ruby -v ruby 
> 1.9.2p290 (2011-07-09 revision 32553) [i686-linux] 

=========================== ===========

> [email protected]:/# gem -v 
> 1.8.10 

================================ ======

> [email protected]:~/# uname -a 
> Linux vm 3.0.0-12-generiC#20-Ubuntu SMP Fri Oct 7 14:50:42 UTC 2011 i686 i686 386 GNU/Linux 

======================================

[email protected]:~# sudo gem install ruby-debug19

Building native extensions. This could take a while... 


    ERROR: Error installing ruby-debug19: 
      ERROR: Failed to build gem native extension. 

      /usr/local/bin/ruby extconf.rb 
    checking for vm_core.h... no 
    checking for vm_core.h... no 
    *** 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. 

    Provided configuration options: 
      --with-opt-dir 
      --without-opt-dir 
      --with-opt-include 
      --without-opt-include=${opt-dir}/include 
      --with-opt-lib 
      --without-opt-lib=${opt-dir}/lib 
      --with-make-prog 
      --without-make-prog 
      --srcdir=. 
      --curdir 
      --ruby=/usr/local/bin/ruby 
      --with-ruby-dir 
      --without-ruby-dir 
      --with-ruby-include 
      --without-ruby-include=${ruby-dir}/include 
      --with-ruby-lib 
      --without-ruby-lib=${ruby-dir}/lib 
    /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `initialize': Connection timed out - connect(2) (Errno::ETIMEDOUT) 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `open' 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `block in connect' 
      from /usr/local/lib/ruby/1.9.1/timeout.rb:44:in `timeout' 
      from /usr/local/lib/ruby/1.9.1/timeout.rb:89:in `timeout' 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `connect' 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:637:in `do_start' 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:626:in `start' 
      from /usr/local/lib/ruby/1.9.1/net/http.rb:1168:in `request' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:239:in `block in read' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:286:in `connect' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:234:in `read' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/contrib/uri_ext.rb:128:in `download' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:55:in `block in create_makefile_with_core' 
      from /usr/local/lib/ruby/1.9.1/tempfile.rb:320:in `open' 
      from /usr/local/lib/ruby/gems/1.9.1/gems/ruby_core_source-0.1.5/lib/ruby_core_source.rb:51:in `create_makefile_with_core' 
      from extconf.rb:19:in `<main>' 
    Requesting http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz 

Gem files will remain installed in /usr/local/lib/ruby/gems/1.9.1/gems/linecache19-0.5.12 for inspection. 
Results logged to /usr/local/lib/ruby/gems/1.9.1/gems/linecache19-0.5.12/ext/trace_nums/gem_make.out 

Installing ruby-debug19 locally Я получил ответ на вопрос выше ссылке, которая работала в основном положить все * .h * .c * .inc файлы в папку ниже

ruby -rmkmf -e 'puts Config::CONFIG["rubyhdrdir"] + "/" + "ruby-" + RUBY_VERSION.to_s + "-p" + RUBY_PATCHLEVEL.to_s' 

Но я не доволен этой душой. Если я попрошу клиента установить ruby, я вряд ли буду ожидать, что вы решите продать это конкретное решение проблемы.

Итак, есть ли способ избежать этого копирования?

Может кто-нибудь, пожалуйста, помогите мне. Спасибо Su

ответ

0

Вы не говорите, какую ОС вы используете, но у меня была аналогичная проблема с моей ОС OSL Lion. Ошибка была для другого драгоценного камня, но ошибка была такой же.

Оказалось, что это какой-то конфликт версии XCode. See my solution here.

Если это не поможет, ознакомьтесь с файлом mkmf.log. Он может содержать ключи к ответам, которые вы ищете.

+0

корень @ ут: ~/# uname -a Linux VM 3.0.0-12-родовой # 20-Ubuntu SMP Пт 7 октября 14:50:42 UTC 2011 i686 i686 i386 GNU/Linux это Ubuntu Linux oneric box –

+0

Где я могу найти mkmf.log? –

+0

Не уверен на Ubuntu. Попробуйте перейти в '/ usr/local/lib/ruby ​​/ gems' и сделать' find. | grep mkmf.log' –