Rustam Guliev created ARROW-17125: ------------------------------------- Summary: Unable to install pyarrow on Debian 10 (i686) Key: ARROW-17125 URL: https://issues.apache.org/jira/browse/ARROW-17125 Project: Apache Arrow Issue Type: Bug Components: Python Affects Versions: 8.0.1, 7.0.1 Environment: Debian GNU/Linux 10 (buster) Python 3.9.7 pip 22.1.2 cmake 3.22.5
$ lscpu Architecture: i686 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian Address sizes: 45 bits physical, 48 bits virtual CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 4 Vendor ID: GenuineIntel CPU family: 6 Model: 45 Model name: Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz Stepping: 7 CPU MHz: 1995.000 BogoMIPS: 3990.00 Hypervisor vendor: VMware Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 20480K Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss nx rdtscp lm constant_tsc arch_perfmon xtopology tsc_reliable nonstop_tsc cpuid pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx hypervisor lahf_lm pti ssbd ibrs ibpb stibp tsc_adjust arat md_clear flush_l1d arch_capabilities Reporter: Rustam Guliev Hi, I am not able to install pyarrow on Debian 10. First, the installation (via `pip` or `poetry install`) fails with the following: {code:java} EnvCommandError Command ['/home/rustam/.cache/pypoetry/virtualenvs/spectra-annotator-Vr_f9e53-py3.9/bin/pip', 'install', '--no-deps', 'file:///home/rustam/.cache/pypoetry/artifacts/b2/96/6a/2a784854a355f986090eafd225285e4a1c6167b5a6adc6c859d785a095/pyarrow-7.0.0.tar.gz'] errored with the following return code 1, and output: Processing /home/rustam/.cache/pypoetry/artifacts/b2/96/6a/2a784854a355f986090eafd225285e4a1c6167b5a6adc6c859d785a095/pyarrow-7.0.0.tar.gz Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: pyarrow Building wheel for pyarrow (pyproject.toml): started Building wheel for pyarrow (pyproject.toml): finished with status 'error' error: subprocess-exited-with-error × Building wheel for pyarrow (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [261 lines of output] running bdist_wheel running build running build_py running egg_info writing pyarrow.egg-info/PKG-INFO writing dependency_links to pyarrow.egg-info/dependency_links.txt writing entry points to pyarrow.egg-info/entry_points.txt writing requirements to pyarrow.egg-info/requires.txt writing top-level names to pyarrow.egg-info/top_level.txt listing git files failed - pretending there aren't any reading manifest file 'pyarrow.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching '../LICENSE.txt' warning: no files found matching '../NOTICE.txt' warning: no previously-included files matching '*.so' found anywhere in distribution warning: no previously-included files matching '*.pyc' found anywhere in distribution warning: no previously-included files matching '*~' found anywhere in distribution warning: no previously-included files matching '#*' found anywhere in distribution warning: no previously-included files matching '.git*' found anywhere in distribution warning: no previously-included files matching '.DS_Store' found anywhere in distribution no previously-included directories found matching '.asv' /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.includes' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.includes' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.includes' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.includes' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.tensorflow' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.tensorflow' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.tensorflow' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.tensorflow' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.tests.data.feather' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.tests.data.feather' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.tests.data.feather' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.tests.data.feather' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.tests.data.orc' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.tests.data.orc' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.tests.data.orc' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.tests.data.orc' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.tests.data.parquet' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.tests.data.parquet' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.tests.data.parquet' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.tests.data.parquet' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.tests.parquet' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.tests.parquet' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.tests.parquet' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.tests.parquet' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) /tmp/pip-build-env-umvxn44o/overlay/lib/python3.9/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'pyarrow.vendored' as data is deprecated, please list it in `packages`. !! ############################ # Package would be ignored # ############################ Python recognizes 'pyarrow.vendored' as an importable package, but it is not listed in the `packages` configuration of setuptools. 'pyarrow.vendored' has been automatically added to the distribution only because it may contain data files, but this behavior is likely to change in future versions of setuptools (and therefore is considered deprecated). Please make sure that 'pyarrow.vendored' is included as a package by using the `packages` configuration field or the proper discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" and "data files" on setuptools documentation page. !! check.warn(importable) running build_ext -- The C compiler identification is GNU 8.3.0 -- The CXX compiler identification is GNU 8.3.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - 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/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- System processor: i686 -- 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 Configured for RELEASE build (set with cmake -DCMAKE_BUILD_TYPE={release,debug,...}) -- Build Type: RELEASE -- Generator: Unix Makefiles -- Build output directory: /tmp/pip-req-build-zemlnvv2/build/temp.linux-i686-cpython-39/release -- Found Python3: /home/rustam/.cache/pypoetry/virtualenvs/spectra-annotator-Vr_f9e53-py3.9/bin/python (found version "3.9.7") found components: Interpreter Development.Module NumPy -- Found Python3Alt: /home/rustam/.cache/pypoetry/virtualenvs/spectra-annotator-Vr_f9e53-py3.9/bin/python CMake Warning (dev) at /home/rustam/.pyenv/versions/3.9.7/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/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/rustam/.pyenv/versions/3.9.7/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args) cmake_modules/FindArrow.cmake:39 (include) cmake_modules/FindArrowPython.cmake:46 (find_package) CMakeLists.txt:229 (find_package) This warning is for project developers. Use -Wno-dev to suppress it. -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29") -- Could NOT find Arrow (missing: Arrow_DIR) -- Checking for module 'arrow' -- No package 'arrow' found CMake Error at /home/rustam/.pyenv/versions/3.9.7/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/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/rustam/.pyenv/versions/3.9.7/lib/python3.9/site-packages/cmake/data/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) cmake_modules/FindArrow.cmake:450 (find_package_handle_standard_args) cmake_modules/FindArrowPython.cmake:46 (find_package) CMakeLists.txt:229 (find_package) -- Configuring incomplete, errors occurred! See also "/tmp/pip-req-build-zemlnvv2/build/temp.linux-i686-cpython-39/CMakeFiles/CMakeOutput.log". -- Running cmake for pyarrow error: command '/home/rustam/.pyenv/versions/3.9.7/bin/cmake' failed with exit code 1 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pyarrow Failed to build pyarrow ERROR: Could not build wheels for pyarrow, which is required to install pyproject.toml-based projects at ~/.poetry/lib/poetry/utils/env.py:1195 in _run 1191│ output = subprocess.check_output( 1192│ cmd, stderr=subprocess.STDOUT, **kwargs 1193│ ) 1194│ except CalledProcessError as e: → 1195│ raise EnvCommandError(e, input=input_) 1196│ 1197│ return decode(output) 1198│ 1199│ def execute(self, bin, *args, **kwargs):{code} Then, by googling I found out that the issue might be that I do not have `{{{}libarrow-dev{}}}` and `{{{}libarrow-python-dev{}}}`. So, I try to install it according to [this|https://arrow.apache.org/install/] instruction. But then I get: {code:java} $ wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb $ sudo apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb Reading package lists... Done Building dependency tree Reading state information... Done Note, selecting 'apache-arrow-apt-source' instead of './apache-arrow-apt-source-latest-buster.deb' apache-arrow-apt-source is already the newest version (8.0.0-1). 0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded. $ sudo apt update Hit:1 http://deb.debian.org/debian buster InRelease Hit:2 http://deb.debian.org/debian buster-updates InRelease Hit:3 http://deb.debian.org/debian buster-backports InRelease Hit:4 http://security.debian.org/debian-security buster/updates InRelease Hit:5 https://apache.jfrog.io/artifactory/arrow/debian buster InRelease Reading package lists... Done Building dependency tree Reading state information... Done 4 packages can be upgraded. Run 'apt list --upgradable' to see them. N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'https://apache.jfrog.io/artifactory/arrow/debian buster InRelease' doesn't support architecture 'i386' $ sudo apt install -y -V libarrow-dev Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package libarrow-dev {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)