【问题标题】:Receive an error from lingnutls/'Hogweed' when importing CV2导入 CV2 时收到来自 lingnutls/'Hogweed' 的错误
【发布时间】:2021-05-05 14:54:57
【问题描述】:

我从未见过这样的错误,也不知道从哪里开始。我用

安装了opencv
conda install opencv

我正在使用名为 fpn 的 conda 环境运行 Ubuntu Linux 18.04。我什至应该如何调试呢?

Traceback (most recent call last):
  File "test.py", line 5, in <module>
    import cv2
ImportError: /home/s/miniconda3/envs/fpn/lib/python3.7/site-packages/../../././libgnutls.so.30: symbol mpn_add_1 version HOGWEED_4 not defined in file libhogweed.so.4 with link time reference

【问题讨论】:

    标签: python package


    【解决方案1】:

    最近发布的用于 Conda 的 opencv 包似乎存在问题。我测试了all the 4.x releases,发现问题是从4.3开始出现的。除非你真的依赖 >=4.3,否则强制 4.3 之前的版本可以解决问题,

    name: test
    channels:
     - anaconda
     - conda-forge
    dependencies:
     - python>=3.8
     - opencv<4.3
    

    在我的情况下,它安装了 4.2.0。在 Python 中导入 cv2 可以正常工作。请注意,使用conda update 对我不起作用,我仍然收到错误,但我必须先使用remove the environment,然后再使用re-create it我认为这种行为表明错误根源于 opencv 的某些依赖项,在使用 conda update 时未正确降级。

    【讨论】:

      【解决方案2】:

      我不认为这是一个真正的解决方案,而是通过 pip 安装

      pip install opencv-python
      

      确实可以正常工作。不应该有办法用 conda 安装吗?

      【讨论】:

      【解决方案3】:

      这个问题似乎发生在 conda-forge 和 anaconda 包之间的混合,它们不兼容。 我遇到了同样的问题;最终的问题是 conda-forge 配置的优先级低于 anaconda。这导致在有选项时安装不兼容的 anaconda 软件包。 这当然是个坏主意 - 因为 conda-forge 假定 anaconda 可用,但反之则不然

      【讨论】:

        猜你喜欢
        • 2022-08-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-13
        • 2015-04-02
        • 1970-01-01
        • 2020-11-28
        • 2018-12-07
        相关资源
        最近更新 更多