Не могу установить gem ruby-debug19

У меня возникла проблема, пытаясь установить Gem ruby-debug19. Установка останавливается с extconf ошибкой.

Здесь была рассмотрена аналогичная проблема: ruby-debug не устанавливает / не создает собственные расширения < / а>

и здесь предлагаются альтернативные драгоценные камни: Альтернатива 'ruby-debug19' (виновник 'linecache19') на ruby ​​2.0.0p247?

То, что я пробовал до сих пор, но безуспешно:

  1. Удалить и переустановить

    • Uninstall the gem (all versions for me): gem uninstall ruby-debug-base19
    • Удалите каталог 0.11.24 (в моем случае: ~ / .rvm / gems / ruby-1.9.2-p0 / gems / ruby-debug-base19-0.11.24 /)
    • установить 0.11.23 явно: gem install ruby-debug-base19 --version=0.11.23
  2. Укажите рубиновый каталог

    • gem install ruby-debug-base19 -- --with-ruby-include=$rvm_path/src/ruby-2.0.0
  3. Используйте альтернативный отладчик гемов (дает ту же ошибку с этим гемом).

Вот мои логи:

root@vm-simioni:~/Documents/gti# gem install ruby-debug-base19  --
--with-ruby-include=/usr/local/rvm/src/ruby-2.2.0 Building native extensions with: '--with-ruby-include=/usr/local/rvm/src/ruby-2.2.0'
This could take a while... ERROR:  Error installing ruby-debug-base19:
    ERROR: Failed to build gem native extension.

    /usr/local/rvm/rubies/ruby-2.2.0/bin/ruby -r ./siteconf20150423-11205-14lhp8s.rb extconf.rb
--with-ruby-include=/usr/local/rvm/src/ruby-2.2.0 checking for rb_method_entry_t.body in method.h... no checking for vm_core.h... yes
checking for iseq.h... yes checking for insns.inc... yes checking for
insns_info.inc... yes checking for eval_intern.h... yes creating
Makefile

make "DESTDIR=" clean

make "DESTDIR=" compiling ruby_debug.c ruby_debug.c:27:19: erreur:
conflicting types for ‘rb_iseq_compile_with_option’ In file included
from ruby_debug.c:4:0: /usr/local/rvm/src/ruby-2.2.0/vm_core.h:767:7:
note: previous declaration of ‘rb_iseq_compile_with_option’ was here
ruby_debug.c: In function ‘ruby_method_ptr’: ruby_debug.c:148:5:
erreur: too few arguments to function ‘rb_method_entry’ In file
included from /usr/local/rvm/src/ruby-2.2.0/vm_core.h:24:0,
                 from ruby_debug.c:4: /usr/local/rvm/src/ruby-2.2.0/method.h:114:20: note: declared here
ruby_debug.c: In function ‘save_call_frame’: ruby_debug.c:508:31:
attention : operation on ‘debug_context->frames’ may be undefined
[-Wsequence-point] ruby_debug.c:519:48: erreur: ‘rb_iseq_t’ has no
member named ‘argc’ ruby_debug.c:521:53: erreur: ‘rb_control_frame_t’
has no member named ‘bp’ ruby_debug.c: In function
‘set_thread_event_flag_i’: ruby_debug.c:713:7: erreur: ‘rb_thread_t’
has no member named ‘event_flags’ ruby_debug.c:713:24: erreur:
‘RUBY_EVENT_VM’ undeclared (first use in this function)
ruby_debug.c:713:24: note: each undeclared identifier is reported only
once for each function it appears in ruby_debug.c: In function
‘debug_event_hook’: ruby_debug.c:747:16: erreur: ‘ID_ALLOCATOR’
undeclared (first use in this function) ruby_debug.c:752:5: erreur:
too few arguments to function ‘rb_method_entry’ In file included from
/usr/local/rvm/src/ruby-2.2.0/vm_core.h:24:0,
                 from ruby_debug.c:4: /usr/local/rvm/src/ruby-2.2.0/method.h:114:20: note: declared here
ruby_debug.c:792:64: attention : assignment from incompatible pointer
type [enabled by default] ruby_debug.c:793:50: erreur: ‘struct
rb_iseq_struct’ has no member named ‘catch_table_size’
ruby_debug.c:801:5: erreur: incompatible type for argument 1 of
‘st_foreach’ In file included from
/usr/local/rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/intern.h:35:0,
                 from /usr/local/rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/ruby.h:1710,
                 from /usr/local/rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby.h:33,
                 from ruby_debug.c:1: /usr/local/rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/st.h:122:5:
note: expected ‘struct st_table *’ but argument is of type ‘struct
list_head’ ruby_debug.c:806:96: erreur: ‘rb_control_frame_t’ has no
member named ‘bp’ ruby_debug.c:868:26: erreur: ‘rb_iseq_t’ has no
member named ‘catch_table_size’ ruby_debug.c:869:40: attention :
assignment from incompatible pointer type [enabled by default]
ruby_debug.c:982:102: erreur: ‘rb_control_frame_t’ has no member named
‘bp’ ruby_debug.c:1058:76: erreur: ‘rb_iseq_t’ has no member named
‘catch_table_size’ ruby_debug.c:1059:60: attention : assignment from
incompatible pointer type [enabled by default] ruby_debug.c:1064:26:
erreur: ‘rb_iseq_t’ has no member named ‘catch_table_size’
ruby_debug.c:1065:40: attention : assignment from incompatible pointer
type [enabled by default] ruby_debug.c: In function
‘context_frame_file’: ruby_debug.c:1842:45: erreur: ‘rb_iseq_t’ has no
member named ‘filename’ ruby_debug.c: In function ‘copy_scalar_args’:
ruby_debug.c:1870:34: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c:1875:48: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c:1876:29: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c:1880:24: erreur: ‘rb_control_frame_t’ has no member named
‘dfp’ ruby_debug.c: In function ‘context_copy_args’:
ruby_debug.c:1905:34: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c:1910:32: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c:1911:29: erreur: ‘rb_iseq_t’ has no member named ‘argc’
ruby_debug.c: In function ‘context_copy_locals’: ruby_debug.c:1941:46:
erreur: ‘rb_control_frame_t’ has no member named ‘dfp’
ruby_debug.c:1959:62: erreur: ‘rb_control_frame_t’ has no member named
‘dfp’ ruby_debug.c: In function ‘do_jump’: ruby_debug.c:2355:67:
attention : assignment from incompatible pointer type [enabled by
default] ruby_debug.c:2356:83: erreur: ‘rb_iseq_t’ has no member named
‘catch_table_size’ ruby_debug.c:2358:26: erreur: ‘rb_iseq_t’ has no
member named ‘catch_table_size’ ruby_debug.c:2365:23: erreur:
‘rb_iseq_t’ has no member named ‘catch_table_size’
ruby_debug.c:2366:37: attention : assignment from incompatible pointer
type [enabled by default] ruby_debug.c:2368:36: erreur: ‘struct
iseq_catch_table’ has no member named ‘sp’ ruby_debug.c: In function
‘context_jump’: ruby_debug.c:2414:53: attention : comparaison entre
des expressions entières signée et non signée [-Wsign-compare]
ruby_debug.c:2426:63: erreur: ‘rb_iseq_t’ has no member named
‘filename’ ruby_debug.c:2428:38: erreur: ‘rb_iseq_t’ has no member
named ‘insn_info_size’ ruby_debug.c:2430:30: erreur: ‘rb_iseq_t’ has
no member named ‘insn_info_table’ ruby_debug.c:2441:56: erreur:
‘rb_iseq_t’ has no member named ‘insn_info_table’ In file included
from ruby_debug.c:9:0: ruby_debug.c: Hors de toute fonction :
/usr/local/rvm/src/ruby-2.2.0/insns_info.inc:723:1: attention :
‘insn_name’ defined but not used [-Wunused-function]
/usr/local/rvm/src/ruby-2.2.0/insns_info.inc:729:1: attention :
‘insn_op_types’ defined but not used [-Wunused-function]
/usr/local/rvm/src/ruby-2.2.0/insns_info.inc:735:1: attention :
‘insn_op_type’ defined but not used [-Wunused-function] ruby_debug.c:
In function ‘context_frame_file’: ruby_debug.c:1843:1: attention :
contrôle a atteint la fin non void de la fonction [-Wreturn-type]
make: *** [ruby_debug.o] Erreur 1

make failed, exit code 2

Gem files will remain installed in
/usr/local/rvm/gems/ruby-2.2.0/gems/ruby-debug-base19-0.11.25 for
inspection. Results logged to
/usr/local/rvm/gems/ruby-2.2.0/extensions/x86-linux/2.2.0/ruby-debug-base19-0.11.25/gem_make.out

gem_make.out не дает дополнительной информации.

Окружающая обстановка:

ruby -v
ruby 2.2.0p0 (2014-12-25 revision 49005) [i686-linux]

bundle -v
Bundler version 1.7.12

rails -v
Rails 3.2.14

rvm -v
rvm 1.26.10 (latest) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]

Любая помощь приветствуется!


person Tanguy S    schedule 23.04.2015    source источник
comment
Этот драгоценный камень довольно старый. Учитывая вашу рубиновую версию, я бы посмотрел на использование byebug.   -  person j-dexx    schedule 23.04.2015


Ответы (1)


ruby-debug19 не работает в Rails 2+. byebug - это замена более новым версиям Ruby.

gem install byebug
person infused    schedule 23.04.2015