chendan created ARROW-17491: ------------------------------- Summary: Build python lib failed for ARMv8 Key: ARROW-17491 URL: https://issues.apache.org/jira/browse/ARROW-17491 Project: Apache Arrow Issue Type: Task Components: Python Affects Versions: 2.0.0 Reporter: chendan
I want to build pyarrow lib for my armv8-a with my own arm v8 cross-compiler. Althrough arror=2.0.0 is old I need to build it for pyflink and I confirmed that 2.0.0 does support armv8 building. I follow the steps described in [https://arrow.apache.org/docs/developers/python.html#using-conda|https://arrow.apache.org/docs/developers/python.html#using-conda:] Firstly , I have build out arrow c++ libs of arm: libarrow.a libarrow_python.a libarrow_python.so.200.0.0 libarrow.so.200.0.0 libarrow_bundled_dependencies.a libarrow_python.so libarrow.so libparquet.a libarrow_dataset.a libarrow_python.so.200 libarrow.so.200 The make -4j command failed due to some third party arm lib has not been built out for linking. But It did not affect the building out of the upper libs. Then I perform building pyarrow step: pushd arrow/python export PYARROW_WITH_PARQUET=1 export PYARROW_WITH_DATASET=1 export PYARROW_PARALLEL=4 python setup.py build_ext --inplace Then an error occured: -- System processor: arm set ARROW_CPU_FLAG -- Arrow build warning level: PRODUCTION Using ld linker Configured for RELEASE build (set with cmake -DCMAKE_BUILD_TYPE=\{release,debug,...}) -- Build Type: RELEASE ARROW_ARMV8_ARCH: ARROW_ARMV8_ARCH -- Build output directory: /root/build/tmp/arrow/python/build/temp.linux-x86_64-3.6/release CMake Warning (dev) at /home/anaconda3/envs/pyarrow-dev/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message): The package name passed to `find_package_handle_standard_args` (PkgConfig) does not match the name of the calling package (Arrow). This can lead to problems in calling code that expects `find_package` result variables (e.g., `_FOUND`) to follow a certain pattern. Call Stack (most recent call first): /home/anaconda3/envs/pyarrow-dev/share/cmake-3.23/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args) cmake_modules/FindArrow.cmake:39 (include) cmake_modules/FindArrowPython.cmake:46 (find_package) CMakeLists.txt:219 (find_package) This warning is for project developers. Use -Wno-dev to suppress it. -- Could NOT find Arrow (missing: Arrow_DIR) -- Checking for module 'arrow' -- No package 'arrow' found CMake Error at /home/anaconda3/envs/pyarrow-dev/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find Arrow (missing: ARROW_INCLUDE_DIR ARROW_LIB_DIR ARROW_FULL_SO_VERSION ARROW_SO_VERSION) Call Stack (most recent call first): /home/anaconda3/envs/pyarrow-dev/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) cmake_modules/FindArrow.cmake:418 (find_package_handle_standard_args) cmake_modules/FindArrowPython.cmake:46 (find_package) CMakeLists.txt:219 (find_package) -- Configuring incomplete, errors occurred! error: command 'cmake' failed with exit status 1 What's it? It seems that I need to pip install arrow and pyarrow. After the installation, the error still occured. How to solve it? -- This message was sent by Atlassian Jira (v8.20.10#820010)