Skip to content

Compile or Crosscompile opencv-python for armv7 #793

Open
@Corallo

Description

@Corallo

Expected behaviour

I am trying to follow the instructions to build wheels for an armv7 device.

Actual behaviour

The build fails at the stage of building wheels for cmake

#47 876.8     Building wheel for cmake (pyproject.toml): started
#47 878.1     Building wheel for cmake (pyproject.toml): finished with status 'error'
#47 878.2     error: subprocess-exited-with-error
#47 878.2 
#47 878.2     × Building wheel for cmake (pyproject.toml) did not run successfully.
#47 878.2     │ exit code: 1
#47 878.2     ╰─> [33 lines of output]
#47 878.2         Traceback (most recent call last):
#47 878.2           File "/tmp/pip-build-env-1v0hi9i5/overlay/local/lib/python3.10/dist-packages/skbuild/setuptools_wrap.py", line 621, in setup
#47 878.2             cmkr = cmaker.CMaker(cmake_executable)
#47 878.2           File "/tmp/pip-build-env-1v0hi9i5/overlay/local/lib/python3.10/dist-packages/skbuild/cmaker.py", line 151, in __init__
#47 878.2             self.cmake_version = get_cmake_version(self.cmake_executable)
#47 878.2           File "/tmp/pip-build-env-1v0hi9i5/overlay/local/lib/python3.10/dist-packages/skbuild/cmaker.py", line 106, in get_cmake_version
#47 878.2             raise SKBuildError(
#47 878.2 
#47 878.2 
#47 878.2             =============================DEBUG ASSISTANCE=============================
#47 878.2             If you are seeing a compilation error please try the following steps to
#47 878.2             successfully install cmake:
#47 878.2             1) Upgrade to the latest pip and try again. This will fix errors for most
#47 878.2                users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
#47 878.2             2) If on Linux, with glibc < 2.12, you can set PIP_ONLY_BINARY=cmake in
#47 878.2                order to retrieve the last manylinux1 compatible wheel.
#47 878.2             3) If on Linux, with glibc < 2.12, you can cap "cmake<3.23" in your
#47 878.2                requirements in order to retrieve the last manylinux1 compatible wheel.
#47 878.2             4) Open an issue with the debug information that follows at
#47 878.2                https://github.com/scikit-build/cmake-python-distributions/issues
#47 878.2 
#47 878.2             Python: 3.10.6
#47 878.2             platform: Linux-5.15.0-57-generic-armv7l-with-glibc2.35
#47 878.2             glibc: glibc 2.35
#47 878.2             machine: armv7l
#47 878.2             bits: 32
#47 878.2             pip: 22.0.2
#47 878.2             setuptools: 59.6.0
#47 878.2             scikit-build: 0.16.6
#47 878.2             PEP517_BUILD_BACKEND=setuptools.build_meta
#47 878.2             =============================DEBUG ASSISTANCE=============================
#47 878.2 
#47 878.2         Problem with the CMake installation, aborting build. CMake executable is cmake
#47 878.2         [end of output]
#47 878.2 
#47 878.2     note: This error originates from a subprocess, and is likely not a problem with pip.
#47 878.2     ERROR: Failed building wheel for cmake
#47 878.2   Successfully built numpy
#47 878.2   Failed to build cmake
#47 878.2   ERROR: Could not build wheels for cmake, which is required to install pyproject.toml-based projects
#47 878.7   error: subprocess-exited-with-error
#47 878.7   
#47 878.7   × pip subprocess to install build dependencies did not run successfully.
#47 878.7   │ exit code: 1
#47 878.7   ╰─> See above for output.
#47 878.7   
#47 878.7   note: This error originates from a subprocess, and is likely not a problem with pip.
#47 878.7   full command: /usr/bin/python3 /tmp/pip-standalone-pip-9zhxus_5/__env_pip__.zip/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-szb9nqwx/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- setuptools==59.2.0 wheel==0.37.0 'cmake>=3.1' pip 'scikit-build>=0.13.2' 'numpy==1.13.3; python_version=='"'"'3.6'"'"' and platform_machine != '"'"'aarch64'"'"' and platform_machine != '"'"'arm64'"'"'' 'numpy==1.17.0; python_version=='"'"'3.7'"'"' and platform_machine != '"'"'aarch64'"'"' and platform_machine != '"'"'arm64'"'"'' 'numpy==1.17.3; python_version=='"'"'3.8'"'"' and platform_machine != '"'"'aarch64'"'"' and platform_machine != '"'"'arm64'"'"'' 'numpy==1.19.3; python_version<='"'"'3.9'"'"' and sys_platform == '"'"'linux'"'"' and platform_machine == '"'"'aarch64'"'"'' 'numpy==1.21.0; python_version<='"'"'3.9'"'"' and sys_platform == '"'"'darwin'"'"' and platform_machine == '"'"'arm64'"'"'' 'numpy==1.19.3; python_version=='"'"'3.9'"'"' and platform_machine != '"'"'aarch64'"'"' and platform_machine != '"'"'arm64'"'"'' 'numpy==1.21.2; python_version>='"'"'3.10'"'"' and platform_system!='"'"'Darwin'"'"'' 'numpy==1.21.4; python_version>='"'"'3.10'"'"' and platform_system=='"'"'Darwin'"'"''
#47 878.7   cwd: [inherit]
#47 878.7   Installing build dependencies: finished with status 'error'
#47 878.7 error: subprocess-exited-with-error
#47 878.7 
#47 878.7 × pip subprocess to install build dependencies did not run successfully.
#47 878.7 │ exit code: 1
#47 878.7 ╰─> See above for output.
#47 878.7 
#47 878.7 note: This error originates from a subprocess, and is likely not a problem with pip.

Do you have any suggestions on how to build wheels for armv7?

Steps to reproduce

Issue submission checklist
  • [x ] This is not a generic OpenCV usage question (looking for help for coding, other usage questions, homework etc.)

  • [x ] I have read the README of this repository and understand that this repository provides only an automated build toolchain for OpenCV Python packages (there is no actual OpenCV code here)

  • [x ] The issue is related to the build scripts in this repository, to the pre-built binaries or is a feature request (such as "please enable this additional dependency")

  • I'm using the latest version of opencv-python

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions