C++ dyld:未加载库:lib/libopencv_core.3.0.dylib原因:未找到图像
我得到以下问题:C++ dyld:未加载库:lib/libopencv_core.3.0.dylib原因:未找到图像,c++,macos,opencv,machine-learning,svmlight,C++,Macos,Opencv,Machine Learning,Svmlight,我得到以下问题: /Users/luke/Desktop/trainHOG/trainHOG;出口 dyld:未加载库:lib/libopencv_core.3.0.dylib 引用自:/Users/luke/Desktop/trainHOG/trainHOG 原因:找不到图像 跟踪/BPT陷阱:5 注销 我使用的是运行OSX v10.9.5和openCV 3.0 alpha的Mac 有问题的图书馆肯定在文件夹里。我已经尝试过删除它并将其粘贴回文件夹,我已经完全删除并重新安装了openCV和ma
/Users/luke/Desktop/trainHOG/trainHOG;出口
dyld:未加载库:lib/libopencv_core.3.0.dylib
引用自:/Users/luke/Desktop/trainHOG/trainHOG
原因:找不到图像
跟踪/BPT陷阱:5
注销
我使用的是运行OSX v10.9.5和openCV 3.0 alpha的Mac
有问题的图书馆肯定在文件夹里。我已经尝试过删除它并将其粘贴回文件夹,我已经完全删除并重新安装了openCV和macports,我还尝试过导出DYLD_库\u PATH=“PATH to dynamic libs here..”
,但没有任何效果。我甚至多次重新启动我的电脑
有人有进一步的建议吗?如果你使用,我没有主意了
export DYLD_LIBRARY_PATH = "path to dynamic libs here.."
它是否应用于您的程序环境?
您可以使用检查正在运行的进程的环境变量
ps -p <pid> -wwwE
ps-p-wwwE
这有帮助吗?似乎是OpenCV的CMake配置文件的某些版本中的一个缺陷,它错误地记录了安装的dylibs中的相对路径,相当容易修复 解决了这个问题。在
OpenCVModule.cmake
和CMakeLists.txt
的每个实例中,将INSTALL\u NAME\u DIR lib
替换为INSTALL\u NAME\u DIR${cmake\u INSTALL\u PREFIX}/lib
OSX 10.13
首先进行测试,您可以使用clang++-oa-I./include-L./lib
-lopencv_core.your.version
然后你可以生成一个可执行文件,运行它,如果有错误信息。
您将发现错误原因,即在链接时找不到库
如果您想解决终端上的错误
您可以使用导出DYLD\u LIBRARY\u PATH=your/lib:$DYLD\u LIBRARY\u PATH
如果您想解决Xcode上的错误
在构建页面中,转到“运行路径搜索路径”
如果出现此问题,请添加lib path: dyld:未加载库:**.dylib。。。原因:未找到合适的图像 表示您的*.dylib文件未使用Apple iD develop帐户签名,以及 有两种方法可以解决这个问题: 1) 正确方法:使用以下命令对所有有错误的文件进行代码签名:
codesign -f -s "Mac Developer: YOURDEVELOPEREMAIL" /usr/local/opt/*/lib/*.dylib
2) 临时方法(直到您不部署到应用商店):在Xcode内,转到:
[YourProjectFile]
-->[YourTargetFile]
-->-->“签名和功能”-->并启用“禁用库验证”
完成:D这对我不起作用。安装3.0仍然会产生带有绝对引用的dylibs。