gekola / xlsxwriter-rb

ruby bindings to libxlsxwriter
Other
8 stars 0 forks source link

Failure building extensions for v0.2.0 - time for new release? #47

Closed robbevp closed 11 months ago

robbevp commented 11 months ago

Hi there,

While doing some other updates, I suddenly got a failure building the gems extensions. This error occurs on v0.2.0, but doesn't for 0.2.1.pre.2

It might be good to do another proper release of this gem?

The log from make:

/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/bin/ruby extconf.rb
make[1]: Entering directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/third_party/minizip'
ioapi.c:234:6: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void fill_fopen_filefunc (pzlib_filefunc_def)
     ^
1 warning generated.
ioapi.c:234:6: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
void fill_fopen_filefunc (pzlib_filefunc_def)
     ^
1 warning generated.
make[1]: Leaving directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/third_party/minizip'
make[1]: Entering directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/third_party/tmpfileplus'
make[1]: Leaving directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/third_party/tmpfileplus'
make[1]: Entering directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/src'
ld: warning: invalid -install_name (/nix/store/a377d66g1rgsd4vkzxdhkza5g55fkmky-zlib-1.3/lib/libz.dylib) in dependent dylib (/nix/store/a377d66g1rgsd4vkzxdhkza5g55fkmky-zlib-1.3/lib/libz.dylib). Dylibs/frameworks which might go in dyld shared cache cannot link with dylibs that won't be in the shared cache
make[1]: Leaving directory '/nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter/libxlsxwriter/src'
creating Makefile

current directory: /nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter
make DESTDIR\= sitearchdir\=./.gem.20231204-93308-idpgcb sitelibdir\=./.gem.20231204-93308-idpgcb clean

current directory: /nix/store/w6yj7m7ic8d4bh9wn421kzcdpsmlmvyy-ruby3.2.2-xlsxwriter-0.2.0/lib/ruby/gems/3.2.0/gems/xlsxwriter-0.2.0/ext/xlsxwriter
make DESTDIR\= sitearchdir\=./.gem.20231204-93308-idpgcb sitelibdir\=./.gem.20231204-93308-idpgcb
compiling chart.c
compiling format.c
compiling rich_string.c
compiling workbook.c
compiling workbook_properties.c
compiling worksheet.c
worksheet.c:1644:3: error: incompatible function pointer types passing 'VALUE (VALUE, VALUE, VALUE)' (aka 'unsigned long (unsigned long, unsigned long, unsigned long)') to parameter of type 'VALUE (*)(VALUE, VALUE)' (aka 'unsigned long (*)(unsigned long, unsigned long)') [-Wincompatible-function-pointer-types]
  rb_define_method(cWorksheet, "set_header", worksheet_set_header_, 1);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:288:135: note: expanded from macro 'rb_define_method'
#define rb_define_method(klass, mid, func, arity)           RBIMPL_ANYARGS_DISPATCH_rb_define_method((arity), (func))((klass), (mid), (func), (arity))
                                                                                                                                      ^~~~~~
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:277:1: note: passing argument to parameter here
RBIMPL_ANYARGS_DECL(rb_define_method, VALUE, const char *)
^
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:256:72: note: expanded from macro 'RBIMPL_ANYARGS_DECL'
RBIMPL_ANYARGS_ATTRSET(sym) static void sym ## _01(__VA_ARGS__, VALUE(*)(VALUE, VALUE), int); \
                                                                       ^
worksheet.c:1645:3: error: incompatible function pointer types passing 'VALUE (VALUE, VALUE, VALUE)' (aka 'unsigned long (unsigned long, unsigned long, unsigned long)') to parameter of type 'VALUE (*)(VALUE, VALUE)' (aka 'unsigned long (*)(unsigned long, unsigned long)') [-Wincompatible-function-pointer-types]
  rb_define_method(cWorksheet, "set_footer", worksheet_set_footer_, 1);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:288:135: note: expanded from macro 'rb_define_method'
#define rb_define_method(klass, mid, func, arity)           RBIMPL_ANYARGS_DISPATCH_rb_define_method((arity), (func))((klass), (mid), (func), (arity))
                                                                                                                                      ^~~~~~
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:277:1: note: passing argument to parameter here
RBIMPL_ANYARGS_DECL(rb_define_method, VALUE, const char *)
^
/nix/store/skqpgrllxkbhcqy48rhvq4ax267l2zlv-ruby-3.2.2/include/ruby-3.2.0/ruby/internal/anyargs.h:256:72: note: expanded from macro 'RBIMPL_ANYARGS_DECL'
RBIMPL_ANYARGS_ATTRSET(sym) static void sym ## _01(__VA_ARGS__, VALUE(*)(VALUE, VALUE), int); \
                                                                       ^
2 errors generated.
make: *** [Makefile:248: worksheet.o] Error 1

make failed, exit code 2
gekola commented 11 months ago

Sorry, I did not have time to work on this gem for a while. Published a new release (pretty much the same as 0.2.1.pre2). The described problem was addressed in 211b1f2f2c67a5c2b429e3a823c6c45271a6d541

robbevp commented 11 months ago

Thanks for the quick response!