无法安装gem ruby​​-debug19

时间:2015-04-23 12:10:54

标签: ruby-on-rails ruby gem bundler ruby-debug

我遇到了问题,试图安装Gem ruby-debug19。安装因extconf错误而停止。

此处已处理类似问题:ruby-debug wont install / build native extensions

这里提出了另一种宝石:Alternative to 'ruby-debug19' (culprit 'linecache19') on ruby 2.0.0p247?

到目前为止我尝试了什么,没有成功:

  1. 删除并重新安装

    • 卸载gem(我的所有版本):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. 指向ruby目录

    • gem install ruby-debug-base19 -- --with-ruby-include=$rvm_path/src/ruby-2.0.0
  3. 使用替代gem调试器(对该gem提供相同的错误。)

  4. 以下是我的日志:

    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 <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
    

    任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

ruby-debug19在Rails 2+下不起作用。 byebug取代了较新版本的Ruby。

gem install byebug