opencv / opencv/opencv-python

opencv_python-4.9.0.80-cp37-abi3-macosx_10_16_x86_64.whl requires macOS 12.0 or later

Open
#948 2 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5.4k
Forks
1k
Avg merge
22h 17m
Merged PRs (30d)
3

Description

opencv-python was recently bumped to 4.9.0.80 on pypi. The wheel for x64 macOS seems to indicate that it's built for macOS 10.16 or later and gets pulled in by pip as a compatible package. However, upon importing the library, libvmaf.1.dylib reports that it's built for macOS 12.0 or later. The changelist for opencv-python 4.9.0.80 indicates that the minimum OS version is now macOS 12.0.

Expected behaviour

The package would be named in such a way that pip would not pull in the latest version of opencv-python for older, incompatible versions of macOS.

Actual behaviour

pip installed a version of opencv-python which required a newer version of macOS.

Steps to reproduce

OS was macOS 11.2 on an Intel Mac. pip install opencv-python.

Using cached opencv_python-4.9.0.80-cp37-abi3-macosx_10_16_x86_64.whl.metadata

Later when using cv2.

[2024-01-09T21:36:25.176Z] [MB: 77828ms][DEBUG] [17]ImportError: dlopen(<redacted>/python3.9/site-packages/cv2/cv2.abi3.so, 2): Symbol not found: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj
Referenced from: <redacted>/python3.9/site-packages/cv2/.dylibs/libvmaf.1.dylib (which was built for Mac OS X 12.0)
Issue submission checklist
  • This is not a generic OpenCV usage question (looking for help for coding, other usage questions, homework etc.)
  • 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)
  • 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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the build scripts and wheel metadata for opencv-python 4.9.0.80, focusing on how the macOS deployment target is represented in the filename and package metadata. Reproduce installation on macOS 11 with pip, then verify that pip no longer selects a wheel requiring macOS 12 or later.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.