Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 944828 - dev-python/pyarrow-18.0.0 does not build with useflag "-parquet"
Summary: dev-python/pyarrow-18.0.0 does not build with useflag "-parquet"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Tupone Alfredo
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-24 20:58 UTC by François Bissey
Modified: 2025-04-06 13:29 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description François Bissey 2024-11-24 20:58:29 UTC
The package pyarrow currently does not build if the "parquet" useflag is not enabled.

Reproducible: Always

Steps to Reproduce:
USE="-parquet" emerge -v pyarrow
Actual Results:  
The build fails during cmake configuration of the python extension:
2024-11-25 09:52:03,892 root INFO cmake -DCMAKE_INSTALL_PREFIX=/home/portage/dev-python/pyarrow-18.0.0/work/apache-arrow-18.0.0/python-python3_12/build/lib.linux-x86_64-cpython-312/pyarrow -DPYTHON_EXECUTABLE=/usr/bin/python3.12 -DPython3_EXECUTABLE=/usr/bin/python3.12 "-DPYARROW_CXXFLAGS=-O2 -pipe" -G Ninja -DPYARROW_BUNDLE_ARROW_CPP=off -DPYARROW_BUNDLE_CYTHON_CPP=off -DPYARROW_GENERATE_COVERAGE=off -DCMAKE_BUILD_TYPE=release -DCMAKE_VERBOSE_MAKEFILE=ON /home/portage/dev-python/pyarrow-18.0.0/work/apache-arrow-18.0.0/python
-- The C compiler identification is GNU 14.2.1
-- The CXX compiler identification is GNU 14.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- System processor: x86_64
-- Performing Test CXX_SUPPORTS_SSE4_2
-- Performing Test CXX_SUPPORTS_SSE4_2 - Success
-- Performing Test CXX_SUPPORTS_AVX2
-- Performing Test CXX_SUPPORTS_AVX2 - Success
-- Performing Test CXX_SUPPORTS_AVX512
-- Performing Test CXX_SUPPORTS_AVX512 - Success
-- Arrow build warning level: PRODUCTION
-- Using ld linker
-- Build Type: RELEASE
-- CMAKE_C_FLAGS:  -Wall -fno-semantic-interposition -msse4.2 -O2 -pipe -fdiagnostics-color=always -O2 -pipe -fno-omit-frame-pointer -Wno-unused-variable -Wno-maybe-uninitialized
-- CMAKE_CXX_FLAGS:  -Wno-noexcept-type -Wno-self-move  -Wall -fno-semantic-interposition -msse4.2 -O2 -pipe -fdiagnostics-color=always -O2 -pipe -fno-omit-frame-pointer -Wno-unused-variable -Wno-maybe-uninitialized
-- Generator: Ninja
-- Build output directory: /home/portage/dev-python/pyarrow-18.0.0/work/apache-arrow-18.0.0/python-python3_12/build/temp.linux-x86_64-cpython-312/release
-- Found Python3: /usr/bin/python3.12 (found version "3.12.7") found components: Interpreter Development.Module NumPy
-- Found Python3Alt: /usr/bin/python3.12
-- Found NumPy version: 2.0.2
-- NumPy include dir: /usr/lib/python3.12/site-packages/numpy/_core/include
-- Found Cython version: 3.0.11
-- Arrow version: 18.0.0
-- Found the Arrow shared library: /usr/lib64/libarrow.so.1800.0.0
-- Found the Arrow import library: ARROW_IMPORT_LIB-NOTFOUND
-- Found the Arrow static library: 
-- Building PyArrow with Dataset
CMake Error at /usr/share/cmake/Modules/CMakeFindDependencyMacro.cmake:76 (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/lib64/cmake/ArrowAcero/ArrowAceroConfig.cmake:65 (find_dependency)
  /usr/share/cmake/Modules/CMakeFindDependencyMacro.cmake:76 (find_package)
  /usr/lib64/cmake/ArrowDataset/ArrowDatasetConfig.cmake:65 (find_dependency)
  CMakeLists.txt:396 (find_package)


-- Configuring incomplete, errors occurred!
Comment 1 François Bissey 2024-11-24 21:21:07 UTC
Note that I do not have parquet installed at all. It looks like the problem is not really in pyarrow itself it fails to find parquet in /usr/lib64/cmake/ArrowAcero/ArrowAceroConfig.cmake which belongs to dev-libs/apache-arrow. 
It looks like not using parquet means ACERO needs to be turned off as well.
Comment 2 François Bissey 2024-11-25 00:58:10 UTC
I have parquet disabled because of #861770 and from my exploration in the last few hours, it feels impossible to build pyarrow without parquet being at least present. I have toggled various variables but their is always something breaking at cmake configuration and it is unclear what once acero is disabled.
Comment 3 Tupone Alfredo gentoo-dev 2024-12-16 07:47:43 UTC
See upstream bug at https://github.com/apache/arrow/issues/45034
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-12-16 15:37:03 UTC
(In reply to Tupone Alfredo from comment #3)
> See upstream bug at https://github.com/apache/arrow/issues/45034

When filing upstream bugs, I strongly recommend including (non-Gentoo-specific) commands to reproduce, so it reflects well on us.
Comment 5 Tupone Alfredo gentoo-dev 2024-12-16 18:35:08 UTC
(In reply to Sam James from comment #4)
> (In reply to Tupone Alfredo from comment #3)
> > See upstream bug at https://github.com/apache/arrow/issues/45034
> 
> When filing upstream bugs, I strongly recommend including
> (non-Gentoo-specific) commands to reproduce, so it reflects well on us.

Thanks for suggestion.

In this case have to install apache-arrow disabling parquet and then building pyarrow also without parquet, from the same set of source.

Not so easy for me to tell them all the step, and maybe discussing why we build that way.
I just notify the effects of the installation: trace of Parquet in the installed cmake files.
Comment 6 Tupone Alfredo gentoo-dev 2025-04-06 13:29:11 UTC
Should be fixed in the 19.0.0 version. Reopen if not