ruby-debug / debase

BSD 2-Clause "Simplified" License
209 stars 32 forks source link

Ruby 2.6 #67

Closed k2m30 closed 5 years ago

k2m30 commented 5 years ago

Just switched to Ruby 2.6.0 from 2.5 on Mac OS

gem install debase --pre
Building native extensions. This could take a while... ERROR: Error installing debase: ERROR: Failed to build gem native extension.

current directory: /Users/user/.rvm/gems/ruby-2.6.0/gems/debase-0.2.3.beta2/ext

/Users/user/.rvm/rubies/ruby-2.6.0/bin/ruby -I /Users/user/.rvm/rubies/ruby-2.6.0/lib/ruby/2.6.0 -r ./siteconf20181231-1553-2fb6q3.rb extconf.rb checking for vm_core.h... yes checking for iseq.h... yes checking for version.h... yes checking for vm_core.h... yes checking for vm_insnhelper.h... yes checking for vm_core.h... yes checking for method.h... yes creating Makefile

current directory: /Users/user/.rvm/gems/ruby-2.6.0/gems/debase-0.2.3.beta2/ext make "DESTDIR=" clean

current directory: /Users/user/.rvm/gems/ruby-2.6.0/gems/debase-0.2.3.beta2/ext make "DESTDIR=" compiling breakpoint.c In file included from breakpoint.c:1: In file included from ./debase_internals.h:5: In file included from /Users/user/.rvm/src/ruby-2.6.0/vm_core.h:75: In file included from /Users/user/.rvm/src/ruby-2.6.0/method.h:14: /Users/user/.rvm/src/ruby-2.6.0/internal.h:125:10: warning: '__msan_allocated_memory' macro redefined [-Wmacro-redefined]

define __msan_allocated_memory(x, y)

     ^

/Library/Developer/CommandLineTools/usr/lib/clang/9.0.0/include/sanitizer/msan_interface.h:113:9: note: previous definition is here

define __msan_allocated_memory(data, size)

    ^

In file included from breakpoint.c:1: In file included from ./debase_internals.h:5: In file included from /Users/user/.rvm/src/ruby-2.6.0/vm_core.h:75: In file included from /Users/user/.rvm/src/ruby-2.6.0/method.h:14: /Users/user/.rvm/src/ruby-2.6.0/internal.h:127:10: warning: '__msan_unpoison' macro redefined [-Wmacro-redefined]

define __msan_unpoison(x, y)

     ^

/Library/Developer/CommandLineTools/usr/lib/clang/9.0.0/include/sanitizer/msan_interface.h:112:9: note: previous definition is here

define __msan_unpoison(a, size)

    ^

In file included from breakpoint.c:1: In file included from ./debase_internals.h:8: /Users/user/.rvm/src/ruby-2.6.0/vm_insnhelper.h:43:16: error: use of undeclared identifier 'FALSE' return FALSE; ^ /Users/user/.rvm/src/ruby-2.6.0/vm_insnhelper.h:46:36: error: use of undeclared identifier 'FALSE' return RBASIC_CLASS(obj) ? FALSE : TRUE; ^ /Users/user/.rvm/src/ruby-2.6.0/vm_insnhelper.h:46:44: error: use of undeclared identifier 'TRUE' return RBASIC_CLASS(obj) ? FALSE : TRUE; ^ 2 warnings and 3 errors generated. make: *** [breakpoint.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/user/.rvm/gems/ruby-2.6.0/gems/debase-0.2.3.beta2 for inspection. Results logged to /Users/user/.rvm/gems/ruby-2.6.0/extensions/x86_64-darwin-16/2.6.0/debase-0.2.3.beta2/gem_make.out

frezbo commented 5 years ago

I also have the same issue and had to pin ruby to 2.5

gabrieldesar commented 5 years ago

Same issue here, returned to 2.5

rockorequin commented 5 years ago

The error with "FALSE not defined" seems to be in the debase-ruby_core_source gem v0.10.4. I edited this file:

/usr/local/rvm/gems/ruby-2.6.0/gems/debase-ruby_core_source-0.10.4/lib/debase/ruby_core_source/ruby-2.6.0-p0/vm_insnhelper.h

and added the line:

#include "regenc.h"

before this line:

RUBY_SYMBOL_EXPORT_BEGIN

and this fixes the problem building debase v0.2.3.beta2 for me.

valich commented 5 years ago

I could not find any sensible way to compile vm_insnhelper.h from 2.6. However, it seems that it's not really needed for debase, I've cleaned up the includes, now it should work. Please check out 0.2.3.beta3.