Project

General

Profile

Actions

Bug #14180

closed

error: ‘RUBY_BIGDECIMAL_VERSION’ undeclared

Added by duerst (Martin Dürst) over 6 years ago. Updated over 6 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.5.0dev (2017-12-13 trunk 61201) [x86_64-cygwin]
[ruby-core:84247]

Description

When compiling the newest checkout, I get the error messages in the attached file.

The first few lines of the error messages are as follows:

compiling bigdecimal.c
bigdecimal.c: In function ‘BigDecimal_version’:
bigdecimal.c:150:3: error: #error RUBY_BIGDECIMAL_VERSION is not defined
 # error RUBY_BIGDECIMAL_VERSION is not defined
   ^
In file included from ../.././include/ruby/ruby.h:36:0,
                 from bigdecimal.h:14,
                 from bigdecimal.c:13:
bigdecimal.c:153:22: error: ‘RUBY_BIGDECIMAL_VERSION’ undeclared (first use in this function)
   return rb_str_new2(RUBY_BIGDECIMAL_VERSION);

Files

errors20171214.txt (3.76 KB) errors20171214.txt duerst (Martin Dürst), 12/14/2017 04:15 AM
Actions #1

Updated by nobu (Nobuyoshi Nakada) over 6 years ago

  • Status changed from Open to Closed

Applied in changeset trunk|r61221.


bigdecimal: dependency

Updated by duerst (Martin Dürst) over 6 years ago

  • Status changed from Closed to Open
  • Assignee changed from mrkn (Kenta Murata) to nobu (Nobuyoshi Nakada)

I am up to date at r61221 and have restarted with ./configure, but part of the errors continue, as follows:

compiling bigdecimal.c
bigdecimal.c: In function ‘BigDecimal_version’:
bigdecimal.c:150:3: error: #error RUBY_BIGDECIMAL_VERSION is not defined
 # error RUBY_BIGDECIMAL_VERSION is not defined
   ^
In file included from ../.././include/ruby/ruby.h:36:0,
                 from bigdecimal.h:14,
                 from bigdecimal.c:13:
bigdecimal.c:153:22: error: ‘RUBY_BIGDECIMAL_VERSION’ undeclared (first use in t    his function)
   return rb_str_new2(RUBY_BIGDECIMAL_VERSION);
                      ^
../.././include/ruby/defines.h:94:53: note: in definition of macro ‘RB_GNUC_EXTE    NSION_BLOCK’
 #define RB_GNUC_EXTENSION_BLOCK(x) __extension__ ({ x; })
                                                     ^
../.././include/ruby/intern.h:835:21: note: in expansion of macro ‘rb_str_new_cs    tr’
 #define rb_str_new2 rb_str_new_cstr
                     ^
bigdecimal.c:153:10: note: in expansion of macro ‘rb_str_new2’
   return rb_str_new2(RUBY_BIGDECIMAL_VERSION);
          ^
bigdecimal.c:153:22: note: each undeclared identifier is reported only once for     each function it appears in
   return rb_str_new2(RUBY_BIGDECIMAL_VERSION);
                      ^
../.././include/ruby/defines.h:94:53: note: in definition of macro ‘RB_GNUC_EXTE    NSION_BLOCK’
 #define RB_GNUC_EXTENSION_BLOCK(x) __extension__ ({ x; })
                                                     ^
../.././include/ruby/intern.h:835:21: note: in expansion of macro ‘rb_str_new_cs    tr’
 #define rb_str_new2 rb_str_new_cstr
                     ^
bigdecimal.c:153:10: note: in expansion of macro ‘rb_str_new2’
   return rb_str_new2(RUBY_BIGDECIMAL_VERSION);
          ^
bigdecimal.c: In function ‘Init_bigdecimal’:
bigdecimal.c:3308:3: error: #error RUBY_BIGDECIMAL_VERSION is not defined
 # error RUBY_BIGDECIMAL_VERSION is not defined
   ^
In file included from ../.././include/ruby/ruby.h:36:0,
                 from bigdecimal.h:14,
                 from bigdecimal.c:13:
bigdecimal.c:3313:60: error: ‘RUBY_BIGDECIMAL_VERSION’ undeclared (first use in     this function)
     rb_define_const(rb_cBigDecimal, "VERSION", rb_str_new2(RUBY_BIGDECIMAL_VERS    ION));
                                                            ^
../.././include/ruby/defines.h:94:53: note: in definition of macro ‘RB_GNUC_EXTE    NSION_BLOCK’
 #define RB_GNUC_EXTENSION_BLOCK(x) __extension__ ({ x; })
                                                     ^
../.././include/ruby/intern.h:835:21: note: in expansion of macro ‘rb_str_new_cs    tr’
 #define rb_str_new2 rb_str_new_cstr
                     ^
bigdecimal.c:3313:48: note: in expansion of macro ‘rb_str_new2’
     rb_define_const(rb_cBigDecimal, "VERSION", rb_str_new2(RUBY_BIGDECIMAL_VERS    ION));
                                                ^
bigdecimal.c: In function ‘BigDecimal_version’:
bigdecimal.c:154:1: warning: control reaches end of non-void function [-Wreturn-    type]
 }
 ^
bigdecimal.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-tautological-compare’
make[2]: *** [Makefile:279: bigdecimal.o] Error 1
make[2]: Leaving directory '/cygdrive/c/Data/ruby/ext/bigdecimal'
make[1]: *** [exts.mk:196: ext/bigdecimal/all] Error 2
make[1]: Leaving directory '/cygdrive/c/Data/ruby'
make: *** [uncommon.mk:238: build-ext] Error 2

Updated by nobu (Nobuyoshi Nakada) over 6 years ago

There would be old Makefile, remove it and retry.

Updated by duerst (Martin Dürst) over 6 years ago

nobu (Nobuyoshi Nakada) wrote:

There would be old Makefile, remove it and retry.

I removed the Makefile. When I used my usual make command (make up unicode-up install-nodoc runnable), I got the following error:

GNUmakefile:33: /defs/gmake.mk: No such file or directory
make: *** No rule to make target '/defs/gmake.mk'.  Stop.

I re-ran ./configure, and was able to run my make command again, more or less every day. The problem keeps persisting, with exactly the same error messages.

Updated by duerst (Martin Dürst) over 6 years ago

  • Status changed from Open to Assigned

I looked at this directly with Nobu today. I had to remove ext/bigdecimal/extconf.h ext/bigdecimal/exts.mk, and ext/configure-ext.mk, and then run make again. This finally solved this issue.

Actions #6

Updated by duerst (Martin Dürst) over 6 years ago

  • Status changed from Assigned to Closed
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0