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)