无法安装OpenCV python3.8

时间:2020-08-14 09:56:20

标签: python python-3.x opencv

当我执行此命令时:

Installing build dependencies ... error ERROR: Command errored out with exit status 1: command: /usr/bin/python3 /usr/lib/python3/dist-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-z4c_sn6u/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 (22 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 Collecting setuptools Downloading setuptools-49.6.0-py3-none-any.whl (803 kB) Collecting wheel Downloading wheel-0.35.0-py2.py3-none-any.whl (24 kB) Collecting scikit-build Using cached scikit_build-0.11.1-py2.py3-none-any.whl (72 kB) Collecting cmake Using cached cmake-3.18.0.tar.gz (28 kB) ERROR: Command errored out with exit status 1: command: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-95tsmt_u/cmake/setup.py'"'"'; __file__='"'"'/tmp/pip-install-95tsmt_u/cmake/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-95tsmt_u/cmake/pip-egg-info cwd: /tmp/pip-install-95tsmt_u/cmake/ Complete output (5 lines): Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-install-95tsmt_u/cmake/setup.py", line 7, in <module> from skbuild import setup ModuleNotFoundError: No module named 'skbuild' ---------------------------------------- ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output. ---------------------------------------- ERROR: Command errored out with exit status 1: /usr/bin/python3 /usr/lib/python3/dist-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-z4c_sn6u/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.

我收到以下错误:

{{1}}

与尝试安装ecapture相同,我正在使用最新的python版本

8 个答案:

答案 0 :(得分:9)

pypi网站上的《安装和使用指南》说

Pip安装失败,并出现ModuleNotFoundError:没有名为“ skbuild”的模块?

自opencv-python版本4.3.0。*起,许多Linux1轮子被manylinux2014轮子取代。如果您的pip太旧,它将尝试使用4.3.0.38中引入的新源代码发行版本来手动构建OpenCV,因为它不知道如何安装许多linux2014轮子。但是,源构建也会由于太旧的pip而失败,因为它无法理解pyproject.toml中的构建依赖关系。要使用新的manylinux2014预先构建的滚轮(或从源代码构建),您的pip版本必须为> = 19.3。
请使用
升级点数 pip install --upgrade pip

答案 1 :(得分:8)

尝试通过升级您的点值

pip install --upgrade pip

然后运行

pip install opencv-python

答案 2 :(得分:6)

我正面临着类似的情况:

Dockerfile:

FROM nvidia/cuda:10.0-cudnn7-runtime-ubuntu18.04

RUN apt-get update -y
RUN apt-get install -y vim curl iputils-ping python3-dev python3-pip libsm6 
libxext6 libxrender-dev python3.6
RUN pip3 install -r /requirements.txt
...

requirements.txt:

...
opencv-python
...

运行docker-compose up &时,我收到此错误:

 Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/tmp/pip-build-acog3xol/opencv-python/setup.py", line 9, in <module>
     import skbuild
 ModuleNotFoundError: No module named 'skbuild'

我尝试了升级pip3的建议解决方案,但遇到了同样的问题。

对我有用的是在opencv-python中修复requirements.txt版本。以前,它是拉版本4.4.0.40。我改为将requirements.txt更改为:

...
opencv-python==4.2.0.34
...

答案 3 :(得分:3)

如果您转到opencv-python PyPi页面,他们将为常见错误提供故障排除提示。参见opencv-python 4.4.0.40

您遇到的错误是:

ModuleNotFoundError: No module named 'skbuild'

此问题的修复程序在“常见问题”下列出,如下:


问:点安装失败并显示ModuleNotFoundError: No module named 'skbuild'?

opencv-python版本4.3.0。*起,manylinux1个轮子被manylinux2014轮子代替。如果您的pip太旧,它将尝试使用4.3.0.38中引入的新源发行版来手动构建OpenCV,因为它不知道如何安装manylinux2014轮子。但是,源构建也会由于太旧的点而失败,因为它不了解pyproject.toml中的构建依赖性。要使用新的manylinux2014预制轮(或从源代码构建),您的pip版本必须>> 19.3。请用pip升级pip install --upgrade pip

TLDR

pip install --upgrade pip

答案 4 :(得分:2)

尝试一下:

pip3 install cmake --user

pip3 install --upgrade pip --user

pip3安装opencv-python --user

答案 5 :(得分:2)

Python 3.8也不适合我。现在使用Python 3.7进行安装,尽管仍在进行中,看起来还可以:

python3.7 -m pip install opencv-python==4.3.0.38

答案 6 :(得分:1)

使用Python 3.7.6,这是最稳定的版本。 3.8上没有安装很多东西。

答案 7 :(得分:0)

您需要通过pip安装sbuild。您可以按照以下命令。 它可以在我的电脑上工作。

python3 -m pip install scikit-build

最适合您的运气。

相关问题