lidavidm commented on pull request #11889:
URL: https://github.com/apache/arrow/pull/11889#issuecomment-1057425101
So, I can manually fix that by copying libgrpc++.a to libgrpcpp.a, then
running ar myself. So far, these changes have been made:
```diff
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake
b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index 84c27c254..220a5ded0 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -3647,6 +3647,8 @@ macro(build_grpc)
add_custom_target(grpc_copy_grpc++ ALL DEPENDS
"${GRPC_STATIC_LIBRARY_GRPCPP_FOR_AR}")
add_dependencies(gRPC::grpcpp_for_bundling grpc_copy_grpc++)
+ list(APPEND ARROW_BUNDLED_STATIC_LIBS gRPC::upb gRPC::gpr
gRPC::address_sorting
+ gRPC::grpc++ gRPC::grpc)
list(APPEND ARROW_BUNDLED_STATIC_LIBS ${GRPC_GPR_ABSL_LIBRARIES})
endmacro()
```
and I'm running
```
/usr/bin/c++ -O3 -DNDEBUG CMakeFiles/arrow_example.dir/example.cc.o -o
arrow_example
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_flight.a
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow.a
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_bundled_dependencies.a
-pthread
```
That fails with more missing symbols. A lot look like OpenSSL, so that's
another issue here: something isn't properly declaring the dependency on
OpenSSL.
```
/usr/bin/c++ -O3 -DNDEBUG CMakeFiles/arrow_example.dir/example.cc.o -o
arrow_example
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_flight.a
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow.a
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_bundled_dependencies.a
-lssl -lcrypto -pthread
```
This still fails, now we're missing more abseil symbols:
```
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_bundled_dependencies.a(completion_queue.cc.o):
In function `std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >
absl::lts_20210324::StrFormat<void*>(absl::lts_20210324::str_format_internal::FormatSpecTemplate<(ArgumentToConv<void*>)()>
const&, void* const&)':
/home/lidavidm/Code/upstream/rok-arrow-14708/build/absl_ep-install/include/absl/strings/str_format.h:342:
undefined reference to
`absl::lts_20210324::str_format_internal::FormatPack[abi:cxx11](absl::lts_20210324::str_format_internal::UntypedFormatSpecImpl,
absl::lts_20210324::Span<absl::lts_20210324::str_format_internal::FormatArgImpl
const>)'
/home/lidavidm/Code/upstream/rok-arrow-14708/install/lib/libarrow_bundled_dependencies.a(completion_queue.cc.o):
In function `void
absl::lts_20210324::str_format_internal::FormatArgImpl::Init<absl::lts_20210324::str_format_internal::VoidPtr>(absl::lts_20210324::str_format_internal::VoidPtr
const&)':
...
```
@rok does the repro work for you?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]