尝试在Mac OSX上运行forc的opencv - Mavericks但是在从python导入cv时仍然没有找到libjpeg.8.dylib的图像
(最近从Mountain Lion更新)
这就是我所做的:
brew tap homebrew / science
- 一切都很好
蟒
import cv
追踪(最近一次通话): 文件"",第1行,in 文件" /usr/local/Cellar/opencv/2.4.9/lib/python2.7/site-packages/cv.py" ;,第1行,in 来自cv2.cv import * ImportError:dlopen(/usr/local/Cellar/opencv/2.4.9/lib/python2.7/site-packages/cv2.so,2):未加载库:/usr/local/lib/libjpeg.8.dylib 参考自:/usr/local/Cellar/opencv/2.4.9/lib/libopencv_highgui.2.4.dylib
我对Mac OS和自制软件有点新鲜。任何人都可以解释如何解决此错误并使opencv运行。我有预装了Mac的python和他们自己安装的python。
谢谢。
答案 0 :(得分:14)
快速而肮脏的解决方案是在/ usr / local / lib文件夹中创建一个指向libjpeg.8.dylib实际位置的符号链接,如下所示:
$ sudo ln -s /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib
问题是opencv和python期望libjpeg.8.dylib在/ usr / local / lib /中,但是homebrew将它安装在/ usr / local / Cellar /中,因此很烦人。
答案 1 :(得分:6)
我使用brew a在我的mac上安装OpenCV,并遇到了同样的问题,但它是使用Xcode C ++控制台应用程序。
然而,另一种解决问题的方法是将cp
文件复制到库位置。
cp /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib
或者后者,我不建议,只是说明另一种方法是将整个文件位置移动mv
到/ usr / local / lib /目录中。
mv /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/
答案 2 :(得分:3)
刚刚遇到了类似的问题(在python import opencv
中有一天为我工作,然后下一次它抛出了你报告的相同错误)这个解决方案对我有用:
升级您的自制软件opencv例如:
brew upgrade opencv
(或在我的情况下为brew upgrade opencv3
)
希望这有帮助
答案 3 :(得分:0)
我在macOS上的Pillow库遇到了类似的问题。 The solution proposed here从源代码安装它为我工作。我必须将它安装到/usr/local/
以便Pillow找到它。您需要命令行工具,这是第一行的目的:
xcode-select --install
curl -O -J -L http://www.ijg.org/files/jpegsrc.v8.tar.gz
tar xvfz jpeg*tar.gz # Unzip and untar what you downloaded
cd jpeg-8 # Change directory to wherever it unpacked to
./configure --prefix="/usr/local" # Configure with the necessary prefix
make
sudo make install