You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2022/07/15 22:10:13 UTC

[GitHub] [arrow] kou commented on pull request #13599: ARROW-17051: [C++] Link Flight/gRPC/Protobuf consistently

kou commented on PR #13599:
URL: https://github.com/apache/arrow/pull/13599#issuecomment-1185987480

   It seems that `-ldl` is missing in Travis CI builds:
   
   e.g.: https://app.travis-ci.com/github/apache/arrow/jobs/576693121#L2786
   
   ```text
   FAILED: debug/plasma-store-server 
   : && /usr/bin/c++  -Wno-noexcept-type -Wno-subobject-linkage  -fdiagnostics-color=always -ggdb -O0  -Wall -Wno-conversion -Wno-sign-conversion -Wunused-result -Werror -fno-semantic-interposition  -fPIC -g   src/plasma/CMakeFiles/plasma-store-server.dir/Unity/unity_0_cxx.cxx.o src/plasma/CMakeFiles/plasma-store-server.dir/Unity/unity_0_c.c.o src/plasma/CMakeFiles/plasma-store-server.dir/dlmalloc.cc.o  -o debug/plasma-store-server  debug/libplasma.a  debug/libarrow.a  /usr/lib/s390x-linux-gnu/libgflags.so.2.2.2  /usr/lib/s390x-linux-gnu/libssl.so  /usr/lib/s390x-linux-gnu/libcrypto.so  /usr/lib/s390x-linux-gnu/libbrotlienc.so  /usr/lib/s390x-linux-gnu/libbrotlidec.so  /usr/lib/s390x-linux-gnu/libbrotlicommon.so  /usr/lib/s390x-linux-gnu/libbz2.so  /usr/lib/s390x-linux-gnu/liblz4.so  /usr/lib/s390x-linux-gnu/libsnappy.so.1.1.8  /usr/lib/s390x-linux-gnu/libz.so  /usr/lib/s390x-linux-gnu/libzstd.so  opentelemetry_ep-install/lib/libopentelemetry_exporter_ostream_span.a  opentelemetry_ep
 -install/lib/libopentelemetry_exporter_otlp_http.a  opentelemetry_ep-install/lib/libopentelemetry_otlp_recordable.a  opentelemetry_ep-install/lib/libopentelemetry_trace.a  opentelemetry_ep-install/lib/libopentelemetry_resources.a  opentelemetry_ep-install/lib/libopentelemetry_common.a  opentelemetry_ep-install/lib/libopentelemetry_exporter_otlp_http_client.a  opentelemetry_ep-install/lib/libopentelemetry_proto.a  protobuf_ep-install/lib/libprotobuf.a  opentelemetry_ep-install/lib/libopentelemetry_http_client_curl.a  /usr/lib/s390x-linux-gnu/libcurl.so  /usr/lib/s390x-linux-gnu/libutf8proc.so  /usr/lib/s390x-linux-gnu/libre2.so  jemalloc_ep-prefix/src/jemalloc_ep/dist//lib/libjemalloc_pic.a  -pthread  -lrt  -lpthread && :
   /usr/bin/ld: debug/libarrow.a(unity_6_cxx.cxx.o): undefined reference to symbol 'dlsym@@GLIBC_2.2'
   /usr/bin/ld: /lib/s390x-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
   collect2: error: ld returned 1 exit status
   ```
   
   Could you try this patch because `cpp/src/arrow/io/hdfs_internal.cc` uses `dlsym()`?
   
   ```diff
   diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
   index b67f90e0bd..945ff7b6f8 100644
   --- a/cpp/CMakeLists.txt
   +++ b/cpp/CMakeLists.txt
   @@ -862,7 +862,7 @@ add_dependencies(arrow_test_dependencies toolchain-tests)
    
    if(ARROW_STATIC_LINK_LIBS)
      add_dependencies(arrow_dependencies ${ARROW_STATIC_LINK_LIBS})
   -  if(ARROW_ORC)
   +  if(ARROW_HDFS OR ARROW_ORC)
        if(NOT MSVC_TOOLCHAIN)
          list(APPEND ARROW_STATIC_LINK_LIBS ${CMAKE_DL_LIBS})
          list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS ${CMAKE_DL_LIBS})
   ```


-- 
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: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org