josiahyan commented on a change in pull request #8757:
URL: https://github.com/apache/arrow/pull/8757#discussion_r584312257



##########
File path: ci/conda_env_unix.yml
##########
@@ -19,6 +19,8 @@
 
 autoconf
 ccache
+google-cloud-cpp=1.20.0

Review comment:
       The currently available version in conda (1.24) is incompatible with the 
way I initially packaged it. I believe I saw in the CI run that 
`storage_client` was missing or something, as the google-cloud-cpp package has 
[started namespacing its 
exports](https://github.com/googleapis/google-cloud-cpp/blob/5bf147226e9333c5106d5fc8b8bba62657eeab97/google/cloud/storage/legacy.cmake.in#L28)
 (finally!).
   
   Given the hard link against abseil libraries (as gRPC does too), to reduce 
packaging size, I decided that the version was safer pinned. The abseil 
libraries actually loaded probably depend on the matrix of abseil versions and 
users of it (gRPC, and the proposed google-cloud-cpp inclusion), making it more 
brittle. Personally, I [extract it by a bazel 
query](https://github.com/apache/arrow/blob/7076b4c75c6981dac7b9e11e5661260cb7ddedf5/cpp/cmake_modules/ThirdpartyToolchain.cmake#L2397)
 (provided in comments) and a Python script to lookup the symbols in the ar 
files. I believe the gRPC builds do something similar, or just pull them out 
from the compiler invocations (does @pitrou or @kou know how they were 
determined in commits like 
[these](https://github.com/apache/arrow/commit/4ecac056dfa88a0032fed7f36a20d2886c39ef90)?).
 Ideally the compiler would do the dead section elimination, but I didn't dig 
into why the build system wouldn't allow so (I'm guessing the libs have to be 
bundled in
  and linked separately somehow?).
   
   I'm hoping to upgrade the dependency when there is code using it (which 
would be the GCS implementation of the Arrow file interfaces).




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to