import cv2报错Symbol not found: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj

Mac系统Python3.11升级opencv-python版本之后,报错如下:

Traceback (most recent call last):
  File "/Users/mac10.12/coding/stream-formatter/./stream_formatter/main.py", line 19, in <module>
    from routers import streams
  File "/Users/mac10.12/coding/stream-formatter/stream_formatter/routers/streams.py", line 8, in <module>
    from tasks import close_it_later, do_convert
  File "/Users/mac10.12/coding/stream-formatter/stream_formatter/tasks.py", line 10, in <module>
    import cv2
  File "/Users/mac10.12/Library/Caches/pypoetry/virtualenvs/stream-formatter-kj-F0gEP-py3.11/lib/python3.11/site-packages/cv2/__init__.py", line 181, in <module>
    bootstrap()
  File "/Users/mac10.12/Library/Caches/pypoetry/virtualenvs/stream-formatter-kj-F0gEP-py3.11/lib/python3.11/site-packages/cv2/__init__.py", line 153, in bootstrap
    native_module = importlib.import_module("cv2")
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/python@3.11/3.11.6_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: dlopen(/Users/mac10.12/Library/Caches/pypoetry/virtualenvs/stream-formatter-kj-F0gEP-py3.11/lib/python3.11/site-packages/cv2/cv2.abi3.so, 2): Symbol not found: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj
  Referenced from: /Users/mac10.12/Library/Caches/pypoetry/virtualenvs/stream-formatter-kj-F0gEP-py3.11/lib/python3.11/site-packages/cv2/.dylibs/libvmaf.1.dylib (which was built for Mac OS X 12.0)
  Expected in: /usr/lib/libc++.1.dylib
 

原因是新版的cv2需要12.0以后的mac版本,而我的是11.7

解决:降低opencv-Python的版本

pip install "opencv-python<4.9"

  • 21
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值