Hello All,

Apologies in advance for the beginner question as I'm not versed in cmake.

I'm having difficulties getting Arrow dependencies satisfied with the C++
version (cmake -DARROW_FLIGHT=ON ..).

Does anyone have any tips or suggestions that enable them to compile arrow
with flight on?

I've compiled and installed grpc (and protobuf as a submodule under grpc).
I also believe I followed the directions under flight correctly:
export PROTOBUF_HOME=/home/t.bisson/git/grpc/third_party/protobuf
export LD_LIBRARY_PATH=$PROTOBUF_HOME:/usr/local/lib
cmake -DARROW_FLIGHT=ON ..

All the libraries are under /usr/local/lib, like libgpr.a.

Thanks,
Tim


The error I'm receiving is this:
Added static library dependency zstd_static:
/home/t.bisson/git/a/cpp/debug/zstd_ep-install/lib/libzstd.a
-- PROTOBUF_HOME: /home/t.bisson/git/grpc/third_party/protobuf
-- Found the Protobuf headers:
/home/t.bisson/git/grpc/third_party/protobuf/src
-- Found the Protobuf shared library: /usr/local/lib/libprotobuf.so
-- Found the Protobuf library: /usr/local/lib/libprotobuf.a
-- Found the Protoc shared library: /usr/local/lib/libprotoc.so
-- Found the Protoc library: /usr/local/lib/libprotoc.a
-- Found the Protoc executable: /usr/local/bin/protoc
Added static library dependency protobuf_static:
/usr/local/lib/libprotobuf.a
CMake Error at cmake_modules/ThirdpartyToolchain.cmake:1252 (get_property):
  get_property could not find TARGET gRPC::gpr.  Perhaps it has not yet been
  created.
Call Stack (most recent call first):
  CMakeLists.txt:523 (include)


CMake Error at cmake_modules/BuildUtils.cmake:86 (message):
  No static or shared library provided for grpc_gpr
Call Stack (most recent call first):
  cmake_modules/ThirdpartyToolchain.cmake:1253 (ADD_THIRDPARTY_LIB)
  CMakeLists.txt:523 (include)


----------------------------------------------------------------------------------------

The line in ThirdpartToolchain.cmake is:

get_property(GPR_STATIC_LIB TARGET gRPC::gpr PROPERTY LOCATION)
  ADD_THIRDPARTY_LIB(grpc_gpr
    STATIC_LIB ${GPR_STATIC_LIB})

However, setting GRPC_HOME brought this set of errors:

Added static library dependency protobuf_static:
/usr/local/lib/libprotobuf.a
CMake Error at cmake_modules/ThirdpartyToolchain.cmake:1248 (find_package):
  Could not find a package configuration file provided by "gRPC" with any of
  the following names:

    gRPCConfig.cmake
    grpc-config.cmake

  Add the installation prefix of "gRPC" to CMAKE_PREFIX_PATH or set
  "gRPC_DIR" to a directory containing one of the above files.  If "gRPC"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:523 (include)

Do you think I should continue down this path of trying to satisfy the
dependency?
----------

contents of /usr/local/lib:
$ ls /usr/local/lib
libaddress_sorting.a             libgrpc.a
 libgrpc_cronet.so.7                    libgrpcpp_channelz.so.1
 libgrpc++.so.1           libgrpc++_unsecure.so.1
libprotobuf-lite.la         libprotoc.la
libaddress_sorting.so            libgrpc++.a
 libgrpc_cronet.so.7.0.0-dev            libgrpcpp_channelz.so.1.18.0-dev
libgrpc++.so.1.18.0-dev  libgrpc++_unsecure.so.1.18.0-dev
libprotobuf-lite.so         libprotoc.so
libaddress_sorting.so.7          libgrpc_cronet.a
libgrpc++_error_details.a              libgrpc++_reflection.a
libgrpc.so.7             libgrpc_unsecure.so.7
 libprotobuf-lite.so.17      libprotoc.so.17
libaddress_sorting.so.7.0.0-dev  libgrpc++_cronet.a
libgrpc++_error_details.so             libgrpc++_reflection.so
 libgrpc.so.7.0.0-dev     libgrpc_unsecure.so.7.0.0-dev
 libprotobuf-lite.so.17.0.0  libprotoc.so.17.0.0
libgpr.a                         libgrpc_cronet.so
 libgrpc++_error_details.so.1           libgrpc++_reflection.so.1
 libgrpc_unsecure.a       liblogdevice.so                   libprotobuf.so
            pkgconfig
libgpr.so                        libgrpc++_cronet.so
 libgrpc++_error_details.so.1.18.0-dev  libgrpc++_reflection.so.1.18.0-dev
libgrpc++_unsecure.a     libprotobuf.a
 libprotobuf.so.17           python2.7
libgpr.so.7                      libgrpc++_cronet.so.1
 libgrpcpp_channelz.a                   libgrpc.so
libgrpc_unsecure.so      libprotobuf.la
libprotobuf.so.17.0.0       python3.6
libgpr.so.7.0.0-dev              libgrpc++_cronet.so.1.18.0-dev
libgrpcpp_channelz.so                  libgrpc++.so
libgrpc++_unsecure.so    libprotobuf-lite.a                libprotoc.a

Thanks,
Tim

Reply via email to