Bug #14180
closed
error: ‘RUBY_BIGDECIMAL_VERSION’ undeclared
Added by duerst (Martin Dürst) over 6 years ago.
Updated over 6 years ago.
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
- Status changed from Open to Closed
Applied in changeset trunk|r61221.
bigdecimal: dependency
- 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
There would be old Makefile, remove it and retry.
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.
- 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.
- Status changed from Assigned to Closed
Also available in: Atom
PDF
Like0
Like0Like0Like0Like0Like0Like0