You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Sutou Kouhei (JIRA)" <ji...@apache.org> on 2019/06/12 02:35:00 UTC

[jira] [Assigned] (ARROW-5553) [Ruby] red-arrow gem does not compile on ruby:2.5 docker image

     [ https://issues.apache.org/jira/browse/ARROW-5553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sutou Kouhei reassigned ARROW-5553:
-----------------------------------

    Assignee: Sutou Kouhei

> [Ruby] red-arrow gem does not compile on ruby:2.5 docker image
> --------------------------------------------------------------
>
>                 Key: ARROW-5553
>                 URL: https://issues.apache.org/jira/browse/ARROW-5553
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Ruby
>    Affects Versions: 0.13.0
>            Reporter: Sean Dilda
>            Assignee: Sutou Kouhei
>            Priority: Major
>
> I'm attempting to install the red-arrow gem in a docker container based on the ruby:2.5 image on docker hub.   I followed the debian instructions on [https://github.com/red-data-tools/packages.red-data-tools.org] to install libarrow-dev.
>  
> I then ran 'gem install red-arrow'
> The output is as follows:
> Building native extensions. This could take a while...
> ERROR:  Error installing red-arrow:
> 	ERROR: Failed to build gem native extension.
>     current directory: /usr/local/bundle/gems/red-arrow-0.13.0/ext/arrow
> /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.5.0 -r ./siteconf20190611-1782-1gg8bpn.rb extconf.rb
> checking --enable-debug-build option... no
> checking C++ compiler... g++
> checking g++ version... 6.3 (gnu++14)
> checking for --enable-debug-build option... no
> checking for -Wall option to compiler... yes
> checking for -Waggregate-return option to compiler... yes
> checking for -Wcast-align option to compiler... yes
> checking for -Wextra option to compiler... yes
> checking for -Wformat=2 option to compiler... yes
> checking for -Winit-self option to compiler... yes
> checking for -Wlarger-than-65500 option to compiler... yes
> checking for -Wmissing-declarations option to compiler... yes
> checking for -Wmissing-format-attribute option to compiler... yes
> checking for -Wmissing-include-dirs option to compiler... yes
> checking for -Wmissing-noreturn option to compiler... yes
> checking for -Wmissing-prototypes option to compiler... yes
> checking for -Wnested-externs option to compiler... yes
> checking for -Wold-style-definition option to compiler... yes
> checking for -Wpacked option to compiler... yes
> checking for -Wp,-D_FORTIFY_SOURCE=2 option to compiler... yes
> checking for -Wpointer-arith option to compiler... yes
> checking for -Wswitch-default option to compiler... yes
> checking for -Wswitch-enum option to compiler... yes
> checking for -Wundef option to compiler... yes
> checking for -Wout-of-line-declaration option to compiler... no
> checking for -Wunsafe-loop-optimizations option to compiler... yes
> checking for -Wwrite-strings option to compiler... yes
> checking for Homebrew... no
> checking for arrow... yes
> checking for arrow-glib... yes
> creating Makefile
> current directory: /usr/local/bundle/gems/red-arrow-0.13.0/ext/arrow
> make "DESTDIR=" clean
> current directory: /usr/local/bundle/gems/red-arrow-0.13.0/ext/arrow
> make "DESTDIR="
> compiling arrow.cpp
> compiling record-batch.cpp
> record-batch.cpp: In member function 'VALUE red_arrow::{anonymous}::StructArrayValueConverter::convert(const arrow::StructArray&, int64_t)':
> record-batch.cpp:344:40: error: 'const class arrow::StructArray' has no member named 'struct_type'
>          const auto struct_type = array.struct_type();
>                                         ^~~~~~~~~~~
> In file included from /usr/local/include/ruby-2.5.0/ruby/ruby.h:29:0,
>                  from /usr/local/include/ruby-2.5.0/ruby.h:33,
>                  from /usr/local/bundle/gems/glib2-3.3.6/ext/glib2/rbgobject.h:26,
>                  from red-arrow.hpp:33,
>                  from record-batch.cpp:20:
> /usr/local/include/ruby-2.5.0/ruby/defines.h:105:57: error: void value not ignored as it ought to be
>  #define RB_GNUC_EXTENSION_BLOCK(x) __extension__ ({ x; })
>                                                          ^
> /usr/local/include/ruby-2.5.0/ruby/intern.h:788:35: note: in expansion of macro 'RB_GNUC_EXTENSION_BLOCK'
>  #define rb_utf8_str_new(str, len) RB_GNUC_EXTENSION_BLOCK( \
>                                    ^~~~~~~~~~~~~~~~~~~~~~~
> record-batch.cpp:350:18: note: in expansion of macro 'rb_utf8_str_new'
>            key_ = rb_utf8_str_new(field_name.data(), field_name.length());
>                   ^~~~~~~~~~~~~~~
> record-batch.cpp: In member function 'uint8_t red_arrow::{anonymous}::UnionArrayValueConverter::compute_child_index(const arrow::UnionArray&, arrow::UnionType*, const char*)':
> record-batch.cpp:516:66: error: no matching function for call to 'arrow::Status::Invalid(const char [18], const unsigned char&)'
>          check_status(Status::Invalid("Unknown type ID: ", type_id),
>                                                                   ^
> In file included from /usr/include/arrow/buffer.h:30:0,
>                  from /usr/include/arrow/array.h:28,
>                  from /usr/include/arrow/api.h:23,
>                  from red-arrow.hpp:22,
>                  from record-batch.cpp:20:
> /usr/include/arrow/status.h:150:17: note: candidate: static arrow::Status arrow::Status::Invalid(const string&)
>    static Status Invalid(const std::string& msg) {
>                  ^~~~~~~
> /usr/include/arrow/status.h:150:17: note:   candidate expects 1 argument, 2 provided
> Makefile:234: recipe for target 'record-batch.o' failed
> make: *** [record-batch.o] Error 1
> make failed, exit code 2
> Gem files will remain installed in /usr/local/bundle/gems/red-arrow-0.13.0 for inspection.
> Results logged to /usr/local/bundle/extensions/x86_64-linux/2.5.0/red-arrow-0.13.0/gem_make.out
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)