Fish shell找不到opencv的dylib文件

2024-05-06 00:52:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚刚在Anaconda和python3.6上使用condaforge安装了opencv3.2。当使用bash运行import cv2正常工作时,在fish shell上运行此命令会输出此错误消息。你知道吗

import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dlopen(/Users/vicarious/anaconda/lib/python3.6/site-packages/cv2.so, 2): Library not loaded: @rpath/libopencv_hdf.3.2.dylib
Referenced from: /Users/vicarious/anaconda/lib/python3.6/site-packages/cv2.so
Reason: image not found

我签出了this问题并添加了set -x DYLD_FALLBACK_LIBRARY_PATH /Users/vicarious/anaconda/lib/ $DYLD_FALLBACK_LIBRARY_PATHfish配置文件,但没有任何帮助。你知道吗

我还禁用了MacOS Sierra SIP,因为它显然不允许DYLD\u回退\u库\u路径被更改。但我还是犯了同样的错误。你知道吗

我该怎么办?你知道吗


Tags: importsolibpackages错误librarysitenot
1条回答
网友
1楼 · 发布于 2024-05-06 00:52:07

在macOS Sierra 10.12上使用fish作为默认shell对我很有用:

python
Python 3.6.0a3 | packaged by conda-forge | (default, Jul 12 2016, 15:51:25)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> print(cv2.__version__)
3.2.0
>>> exit()

如果它在bash中工作,但在fish中不工作,那么您的bash环境可能正在定义一个在fish环境中不存在或具有不同值的环境变量。另外,我使用conda install -c conda-forge opencv安装了opencv2。如果您从源代码构建它或以其他方式安装它,这可能是一个因素。你知道吗

相关问题 更多 >