presto: [Native Execution] Build failure on MacOS when PRESTO_ENABLE_PARQUET=ON
The presto_server target build fails on MacOS with bunch of missing symbols when built with -DPRESTO_ENABLE_PARQUET=ON
bash$ PRESTO_ENABLE_PARQUET=ON make debug
.....
Undefined symbols for architecture x86_64:
"apache::thrift::CodecConfig::__fbthrift_clear()", referenced from:
apache::thrift::CodecConfig::~CodecConfig() in libpresto_thrift-cpp2.a(PrestoThriftAsyncClient.cpp.o)
apache::thrift::CodecConfig::~CodecConfig() in libthriftcpp2.a(Cpp2Channel.cpp.o)
apache::thrift::CodecConfig::~CodecConfig() in libthriftcpp2.a(RequestChannel.cpp.o)
apache::thrift::CodecConfig::~CodecConfig() in libthriftcpp2.a(FramingHandler.cpp.o)
apache::thrift::CodecConfig::~CodecConfig() in libthriftcpp2.a(RpcMetadataUtil.cpp.o)
"apache::thrift::concurrency::Util::currentTimeTicks(long long)", referenced from:
apache::thrift::concurrency::Util::currentTime() in libtransport.a(THttpParser.cpp.o)
"apache::thrift::ContextStack::onReadData(apache::thrift::SerializedMessage const&)", referenced from:
folly::exception_wrapper apache::thrift::detail::ac::recv_wrapped_helper<apache::thrift::BinaryProtocolReader, apache::thrift::ThriftPresult<true> >(apache::thrift::BinaryProtocolReader*, apache::thrift::ClientReceiveState&, apache::thrift::ThriftPresult<true>&) in libpresto_thrift-cpp2.a(PrestoThriftAsyncClient.cpp.o)
folly::exception_wrapper apache::thrift::detail::ac::recv_wrapped_helper<apache::thrift::CompactProtocolReader, apache::thrift::ThriftPresult<true> >(apache::thrift::CompactProtocolReader*, apache::thrift::ClientReceiveState&, apache::thrift::ThriftPresult<true>&) in libpresto_thrift-cpp2.a(PrestoThriftAsyncClient.cpp.o)
.........
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 28 (15 by maintainers)
@mbasmanova @majetideepak Here is the partial fix: https://github.com/prestodb/presto/pull/18213/files
You need to add also on line
158
inpresto-native-execution/CMakeLists.txt
(afterfind_library(RE2 re2)
):You could adopt in somehow as we are waiting for legal team to finish the CLA process so it still can take some time. P.s. Not sure if this will help with your issue 😃
CC: @kgpai
Hi, I have the same problem as well. Can we get an update on this ticket? Thanks!
it looks like I can reproduce the issue locally. I will take a look at the issue.
PRESTO_ENABLE_PARQUET=ON make debug
should do.@mbasmanova Yes, the build fails only when PRESTO_ENABLE_PARQUET=ON. I edited the description. Previously it was only in the title.