我正在尝试构建一个使用 QT 和 OpenCV 的程序。它编译正确,但是当我运行应用程序时,我得到:
Starting /Users/Me/MyApp/Contents/MacOS/Foo...
dyld: Library not loaded: /usr/local/lib/libavformat.54.29.104.dylib
Referenced from: /usr/local/lib/libopencv_highgui.2.4.3.dylib
Reason: image not found
The program has unexpectedly finished.
/Users/Me/MyApp/Contents/MacOS/Foo exited with code 0
我查看了我/usr/local/lib
的文件,文件在那里正确链接,问题是libav
现在版本更高并且opencv
没有反映这一点(例如,在十六进制编辑器中查看 opencv dylib 我发现它想要什么上面说,但实际上在我的 lib 文件夹中的是版本54.59.106
。我尝试运行brew update/upgrade
并重新链接所有内容,但没有运气。
我可以通过复制有问题的 dylib 并将它们重命名为旧版本来快速修复。这确实会导致程序正确打开,但这有点麻烦。
显然我可以通过重新安装相关库来解决这个问题,但这需要宝贵的时间..从这个线程来看,这似乎是唯一的选择,但我不知道这是否已经修复:https ://github.com /mxcl/homebrew/issues/11832