You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Kouhei Sutou (Jira)" <ji...@apache.org> on 2021/11/12 00:40:00 UTC

[jira] [Commented] (ARROW-14681) [C++] vcpkg arrow port ArrowDataset component usage

    [ https://issues.apache.org/jira/browse/ARROW-14681?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17442521#comment-17442521 ] 

Kouhei Sutou commented on ARROW-14681:
--------------------------------------

This is an our CMake package problem.
We hope that we can fix this in the next release.

Workaround:

{noformat}
find_package(Arrow REQUIRED)
get_filename_component(ARROW_SEARCH_DIR ${Arrow_CONFIG} DIRECTORY)
find_package(ArrowDataset REQUIRED HINTS ${ARROW_SEARCH_DIR})
{noformat}

See also: ARROW-12175

> [C++] vcpkg arrow port ArrowDataset component usage
> ---------------------------------------------------
>
>                 Key: ARROW-14681
>                 URL: https://issues.apache.org/jira/browse/ARROW-14681
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: Yue Ni
>            Priority: Major
>
> vcpkg arrow port ([https://github.com/microsoft/vcpkg/tree/master/ports/arrow)] installs not only arrow but also other arrow components such as ArrowDataset/ArrowFlight. After installation, I can use `find_package(Arrow)` in CMake/vcpkg to find the arrow package and use it. But I wonder how I can use other components such as ArrowDataset. I tried using it in CMake like below:
> 1) `find_package(ArrowDataset REQUIRED)`
> CMake will report error like below:
> {quote}– _find_package pkg_name=ArrowDataset args=REQUIRED
> CMake Error at /Users/ss/dev/tools/vcpkg/scripts/buildsystems/vcpkg.cmake:789 (_find_package):
>   By not providing "FindArrowDataset.cmake" in CMAKE_MODULE_PATH this project
>   has asked CMake to find a package configuration file provided by
>   "ArrowDataset", but CMake did not find one.
>   Could not find a package configuration file provided by "ArrowDataset" with
>   any of the following names:
>     ArrowDatasetConfig.cmake
>     arrowdataset-config.cmake
>   Add the installation prefix of "ArrowDataset" to CMAKE_PREFIX_PATH or set
>   "ArrowDataset_DIR" to a directory containing one of the above files.  If
>   "ArrowDataset" provides a separate development package or SDK, be sure it
>   has been installed.
> {quote}
>  
> 2) `find_package(Arrow CONFIGS ArrowDatasetConfig.cmake REQUIRED)`
> The ArrowDatasetConfig.cmake can be found, however, it tries to find Parquet internally and still failed with error like below:
> {quote}– _find_package pkg_name=Arrow args=CONFIGS;ArrowDatasetConfig.cmake;REQUIRED
> – _find_package pkg_name=Arrow args=REQUIRED
> – _find_package pkg_name=Threads args=REQUIRED
> – _find_package pkg_name=Snappy args=REQUIRED
> – _find_package pkg_name=PkgConfig args=QUIET
> – _find_package pkg_name=Threads args=REQUIRED
> – _find_package pkg_name=Thrift args=REQUIRED
> – Found thrift: /Users/ss/dev/tools/vcpkg/installed/x64-osx
> – _find_package pkg_name=Threads args=QUIET
> – _find_package pkg_name=lz4 args=REQUIRED
> – _find_package pkg_name=zstd args=REQUIRED
> – _find_package pkg_name=re2Alt args=REQUIRED
> – _find_package pkg_name=re2 args=
> – _find_package pkg_name=BZip2 args=REQUIRED
> – _find_package pkg_name=unofficial-utf8proc args=REQUIRED
> – _find_package pkg_name=c-ares args=
> – _find_package pkg_name=c-ares args=CONFIG
> – _find_package pkg_name=absl args=CONFIG
> – _find_package pkg_name=Threads args=
> – _find_package pkg_name=upb args=CONFIG;REQUIRED
> – _find_package pkg_name=Parquet args=REQUIRED
> CMake Error at /Users/ss/dev/tools/vcpkg/scripts/buildsystems/vcpkg.cmake:789 (_find_package):
>   By not providing "FindParquet.cmake" in CMAKE_MODULE_PATH this project has
>   asked CMake to find a package configuration file provided by "Parquet", but
>   CMake did not find one.
>   Could not find a package configuration file provided by "Parquet" with any
>   of the following names:
>     ParquetConfig.cmake
>     parquet-config.cmake
>   Add the installation prefix of "Parquet" to CMAKE_PREFIX_PATH or set
>   "Parquet_DIR" to a directory containing one of the above files.  If
>   "Parquet" provides a separate development package or SDK, be sure it has
>   been installed.
> Call Stack (most recent call first):
>   /usr/local/Cellar/cmake/3.21.3_1/share/cmake/Modules/CMakeFindDependencyMacro.cmake:47 (find_package)
>   /Users/ss/dev/tools/vcpkg/installed/x64-osx/share/arrow/ArrowDatasetConfig.cmake:55 (find_dependency)
>   /Users/ss/dev/tools/vcpkg/scripts/buildsystems/vcpkg.cmake:789 (_find_package)
> {quote}
> Is there any instruction describing how this could be done? Thanks.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)