[ https://issues.apache.org/jira/browse/ARROW-18406?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Weston Pace resolved ARROW-18406. --------------------------------- Fix Version/s: 11.0.0 Resolution: Fixed Issue resolved by pull request 14735 [https://github.com/apache/arrow/pull/14735] > [C++] Can't build Arrow with Substrait on Ubuntu 20.04 > ------------------------------------------------------ > > Key: ARROW-18406 > URL: https://issues.apache.org/jira/browse/ARROW-18406 > Project: Apache Arrow > Issue Type: Improvement > Components: C++ > Reporter: Dewey Dunnington > Priority: Major > Labels: pull-request-available > Fix For: 11.0.0 > > Time Spent: 1h > Remaining Estimate: 0h > > I recently tried to rebuild Arrow with Substrait on Ubuntu 20.04 and got the > following error: > {code:java} > [100%] Building CXX object > src/arrow/engine/CMakeFiles/arrow_substrait_objlib.dir/substrait/type_internal.cc.o > /home/dewey/Desktop/r/arrow/cpp/src/arrow/engine/substrait/expression_internal.cc: > In function ‘arrow::Status arrow::engine::DecodeArg(const > substrait::FunctionArgument&, int, arrow::engine::SubstraitCall*, const > arrow::engine::ExtensionSet&, const arrow::engine::ConversionOptions&)’: > /home/dewey/Desktop/r/arrow/cpp/src/arrow/engine/substrait/expression_internal.cc:60:21: > error: ‘bool substrait::FunctionArgument::has_enum_() const’ is private > within this context > 60 | if (arg.has_enum_()) { > | ^ > In file included from > /home/dewey/Desktop/r/arrow/cpp/src/arrow/engine/substrait/expression_internal.h:30, > from > /home/dewey/Desktop/r/arrow/cpp/src/arrow/engine/substrait/expression_internal.cc:20: > /home/dewey/.r-arrow-dev-build/build/substrait_ep-generated/substrait/algebra.pb.h:21690:13: > note: declared private here > 21690 | inline bool FunctionArgument::has_enum_() const { > | ^~~~~~~~~~~~~~~~ > [100%] Building CXX object > src/arrow/engine/CMakeFiles/arrow_substrait_objlib.dir/substrait/util.cc.o > make[2]: *** > [src/arrow/engine/CMakeFiles/arrow_substrait_objlib.dir/build.make:76: > src/arrow/engine/CMakeFiles/arrow_substrait_objlib.dir/substrait/expression_internal.cc.o] > Error 1 > make[2]: *** Waiting for unfinished jobs.... > make[1]: *** [CMakeFiles/Makefile2:2028: > src/arrow/engine/CMakeFiles/arrow_substrait_objlib.dir/all] Error 2 > make: *** [Makefile:146: all] Error 2 > {code} > [~westonpace] suggested that it is probably a protobuf version problem! For > me this is: > {code:java} > $ protoc --version > libprotoc 3.6.1 > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)