未找到 Mexopencv mex 文件
Posted
技术标签:
【中文标题】未找到 Mexopencv mex 文件【英文标题】:Mexopencv mex file not found 【发布时间】:2013-08-28 14:16:23 【问题描述】:我调用了一个使用 matlab 中的 mexopencv 编译的 mex 文件。该程序在 matlab 中运行并且没有问题,但是当我使用 matlab deploytool 将 matlab 转换为 c++ 共享库并在运行 exe 时编译为 exe 应用程序时,我收到一个错误,即找不到 mexfile 或它不是有效的文件路径或目录。这可能是什么原因?我应该在我的 Makefile 中添加任何其他库或路径还是应该更改系统路径?我正在使用 linux 和 MATLAB R2012a,mexopencv。
请注意,可以从 matlab 调用 mex 文件并给出输出,但不能由 exe 调用。我正在尝试运行已经在 mexopencv 示例中的人脸检测模块。它需要一个 xml 文件作为输入。为什么检测不到mex文件和xml文件?
【问题讨论】:
【参考方案1】:deploytool 应该引入 MEX 文件,所以我不得不猜测 mexopencv 文件的依赖项没有包含在生成的库中,也没有通过LD_LIBRARY_PATH
或LD_PRELOAD
访问。这些将是 OpenCV 库(例如 libopencv_core.so.2.4、libopencv_imgproc.so.2.4 等)。
使用 ldd
检查 mexopencv mex 文件的其他依赖项(对于 Windows 用户,请使用 Dependency Walker)。 编辑:然后添加它们!
【讨论】:
以上是关于未找到 Mexopencv mex 文件的主要内容,如果未能解决你的问题,请参考以下文章
matlab 解决 错误使用 mex 未找到支持的编译器或 SDK
Matlab 2017a 无法识别编译器(使用 mex 时出错,未找到支持的编译器或 SDK)