【问题标题】:Error while installing opencv-python in virtualenvironment with python 3.9 on macOS Catalina在 macOS Catalina 上使用 python 3.9 在虚拟环境中安装 opencv-python 时出错
【发布时间】:2021-02-13 06:22:13
【问题描述】:

我正在尝试在装有 macOS Catalina 的 MacBook Pro 上为深度学习项目设置一个名为 deeplearning 的虚拟环境。

deeplearning 虚拟环境中我做了pip install opencv-python 但这会引发一个错误,我不明白......我该如何解决?我是否忽略了什么?

查看整个错误输出的最后一点,它似乎正在尝试将不同的numpy 版本与特定的python 版本匹配。 Python 3.9 不在其中。这是问题吗?我应该恢复到版本Python 3.8吗?

我用brew 安装了python@3.9numpy

谢谢

砂光机

pip install opencv-python
Collecting opencv-python
  Using cached opencv-python-4.4.0.44.tar.gz (88.9 MB)
  Installing build dependencies ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/swvanderlaan/.virtualenvs/deeplearning/bin/python /Users/swvanderlaan/.virtualenvs/deeplearning/lib/python3.9/site-packages/pip install --ignore-installed --no-user --prefix /private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-build-env-mudxxq4k/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- setuptools wheel scikit-build cmake pip 'numpy==1.11.3; python_version=='"'"'3.5'"'"'' 'numpy==1.13.3; python_version=='"'"'3.6'"'"'' 'numpy==1.14.5; python_version=='"'"'3.7'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"''
       cwd: None
  Complete output (4098 lines):
  Ignoring numpy: markers 'python_version == "3.5"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.6"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.7"' don't match your environment

[由于字数限制,我无法发布所有内容。]

  ERROR: Command errored out with exit status 1: /Users/swvanderlaan/.virtualenvs/deeplearning/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-install-we6wxt_t/numpy/setup.py'"'"'; __file__='"'"'/private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-install-we6wxt_t/numpy/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-record-wdchzme9/install-record.txt --single-version-externally-managed --prefix /private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-build-env-mudxxq4k/overlay --compile --install-headers /private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-build-env-mudxxq4k/overlay/include/site/python3.9/numpy Check the logs for full command output.
  ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/swvanderlaan/.virtualenvs/deeplearning/bin/python /Users/swvanderlaan/.virtualenvs/deeplearning/lib/python3.9/site-packages/pip install --ignore-installed --no-user --prefix /private/var/folders/kc/c5rw4cb94c1c149gsm2ygfc00000gn/T/pip-build-env-mudxxq4k/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- setuptools wheel scikit-build cmake pip 'numpy==1.11.3; python_version=='"'"'3.5'"'"'' 'numpy==1.13.3; python_version=='"'"'3.6'"'"'' 'numpy==1.14.5; python_version=='"'"'3.7'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"'' Check the logs for full command output.

然后更新。这延伸到安装:scipyscikit-learnscikit-image - 它们都依赖于 numpy。也安装了pip3 install numpy

【问题讨论】:

    标签: python macos numpy pip opencv-python


    【解决方案1】:

    问题是Python 3.9 只是一些旧的弱点,看起来OpenCV 没有可用的二进制包。所以pip 试图从源代码编译它,这显然失败了,因为它有很多依赖项。

    我建议您现在安装Python 3.8,并在几周/几个月内升级到Python 3.9,届时pip 上将提供所有常用软件包。

    【讨论】:

    • 对。我也有同样的怀疑。所以我可能需要正确设置我的brew 环境。它现在安装Python 3.9,因为cairo 需要最新版本,或者至少stable 1.16.0 version from cairo` 需要最新版本。关于如何解决这个问题的任何想法?
    猜你喜欢
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 2021-01-05
    • 2021-03-05
    • 2018-07-03
    • 1970-01-01
    相关资源
    最近更新 更多