【问题标题】:python3 openCV install error: Symbol not found: _clock_gettimepython3 openCV安装错误:找不到符号:_clock_gettime
【发布时间】:2018-07-20 22:13:30
【问题描述】:

在 python3 中导入 opencv 时,谁能帮我解决一个错误?

当我在 python3 中导入 cv2 时,我得到类似的东西

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/cv2/__init__.py", line 4, in <module>
from .cv2 import *

ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cv2/cv2.cpython-36m-darwin.so, 2): 
Symbol not found: _clock_gettime
Referenced from: /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cv2/.dylibs/libavutil.55.78.100.dylib 
(which was built for Mac OS X 10.12)
Expected in: /usr/lib/libSystem.B.dylib
in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cv2/.dylibs/libavutil.55.78.100.dylib

另外,我使用的是 python 版本 3.6.3

【问题讨论】:

  • 你实际使用什么样的操作系统?

标签: python python-3.x opencv


【解决方案1】:

clock_gettime() 是在 macOS 10.12 中添加的。它在错误消息中这么说。

据我了解,可能可以针对早期的 Xcode SDK 进行构建,但最简单的可能是升级到 Mac 的最新操作系统。

【讨论】:

  • 对。让一个较小的 Python 依赖项工作的最简单方法是升级整个操作系统。
【解决方案2】:

如果你不想升级你的操作系统,你可以安装更早版本的opencv:

pip install opencv-python==3.3.0.10

【讨论】:

  • ERROR: No matching distribution found for opencv-python==3.3.0.10。但是3.4.5.20 似乎仍然有效。避免使用4.x 系列。
  • 适用于所有尝试更新 3.x 版本的人。我尝试使用3.4.8.29,但这也没有用(得到了同样的错误)。 3.3.0.10 工作。 @user124114
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-19
  • 2016-12-02
  • 1970-01-01
  • 2021-12-16
  • 2023-03-27
  • 2016-07-12
  • 2012-05-06
相关资源
最近更新 更多