rok commented on PR #13681:
URL: https://github.com/apache/arrow/pull/13681#issuecomment-1193241547
I'm still not able to build GCS + tests, however GCS without tests builds
fine and gives me a working build.
#13407 didn't work, not sure why.
This is the cmake (GCS + tests) that's erroring:
```
cmake \
-GNinja \
-DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
-DCMAKE_INSTALL_LIBDIR=lib \
-DARROW_PYTHON=ON \
-DARROW_COMPUTE=ON \
-DARROW_FILESYSTEM=ON \
-DARROW_CSV=ON \
-DARROW_GCS=ON \
-DARROW_INSTALL_NAME_RPATH=OFF \
-DARROW_BUILD_TESTS=ON \
-DCMAKE_CXX_STANDARD=17 \
..
```
Error from building GCS + tests:
```
Undefined symbols for architecture arm64:
"absl::lts_20220623::FormatTime(std::__1::basic_string_view<char,
std::__1::char_traits<char> >, absl::lts_20220623::Time,
absl::lts_20220623::TimeZone)", referenced from:
arrow::fs::(anonymous
namespace)::GcsIntegrationTest_OpenInputStreamReadMetadata_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::FromChrono(std::__1::chrono::time_point<std::__1::chrono::system_clock,
std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l> > >
const&)", referenced from:
arrow::fs::(anonymous
namespace)::GcsIntegrationTest_OpenInputStreamReadMetadata_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::RFC3339_full", referenced from:
arrow::fs::(anonymous
namespace)::GcsFileSystem_ObjectMetadataRoundtrip_Test::TestBody() in
gcsfs_test.cc.o
arrow::fs::(anonymous
namespace)::GcsIntegrationTest_OpenInputStreamReadMetadata_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::time_internal::cctz::utc_time_zone()", referenced
from:
arrow::fs::(anonymous
namespace)::GcsIntegrationTest_OpenInputStreamReadMetadata_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::ToDoubleSeconds(absl::lts_20220623::Duration)",
referenced from:
arrow::fs::(anonymous
namespace)::GcsFileSystem_ObjectMetadataRoundtrip_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::Duration::operator-=(absl::lts_20220623::Duration)",
referenced from:
arrow::fs::(anonymous
namespace)::GcsFileSystem_ObjectMetadataRoundtrip_Test::TestBody() in
gcsfs_test.cc.o
"absl::lts_20220623::ParseTime(std::__1::basic_string_view<char,
std::__1::char_traits<char> >, std::__1::basic_string_view<char,
std::__1::char_traits<char> >, absl::lts_20220623::Time*,
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >*)", referenced from:
arrow::fs::(anonymous
namespace)::GcsFileSystem_ObjectMetadataRoundtrip_Test::TestBody() in
gcsfs_test.cc.o
```
I've also noticed some duplicated symbols:
```
[280/317] Bundling
/Users/rok/Documents/repos/arrow/cpp/build/release/libarrow_bundled_dependencies.a
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (binary_data_as_debug_string.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(binary_data_as_debug_string.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(binary_data_as_debug_string.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (compute_engine_util.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a(compute_engine_util.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(compute_engine_util.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (credentials.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a(credentials.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(credentials.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (curl_handle.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(curl_handle.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(curl_handle.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (curl_handle_factory.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(curl_handle_factory.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(curl_handle_factory.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (curl_wrappers.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(curl_wrappers.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(curl_wrappers.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (escaping.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/absl_ep-install/lib/libabsl_strings_internal.a(escaping.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/absl_ep-install/lib/libabsl_strings.a(escaping.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (make_jwt_assertion.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(make_jwt_assertion.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(make_jwt_assertion.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (openssl_util.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(openssl_util.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(openssl_util.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (throw_delegate.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/absl_ep-install/lib/libabsl_throw_delegate.a(throw_delegate.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a(throw_delegate.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (unified_rest_credentials.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(unified_rest_credentials.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a(unified_rest_credentials.cc.o)
due to use of basename, truncation and blank padding
/Library/Developer/CommandLineTools/usr/bin/libtool: warning same member
name (version.cc.o) in output file used for input files:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a(version.cc.o)
and:
/Users/rok/Documents/repos/arrow/cpp/build/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a(version.cc.o)
due to use of basename, truncation and blank padding
```
These can be resolved with:
```diff
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake
b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index 5d1da18b7..c9bbcf3db 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -4164,7 +4164,6 @@ macro(build_google_cloud_cpp_storage)
absl::variant
nlohmann_json::nlohmann_json
Crc32c::crc32c
- CURL::libcurl
Threads::Threads
OpenSSL::SSL
OpenSSL::Crypto
@@ -4193,9 +4192,7 @@ macro(build_google_cloud_cpp_storage)
absl::raw_logging_internal
absl::spinlock_wait
absl::strings
- absl::strings_internal
absl::str_format_internal
- absl::throw_delegate
absl::time
absl::time_zone
Crc32c::crc32c)
```
I'm not sure how much of a problem this really is, but I'll open a Jira to
make it more visible.
--
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]