问题标签 [mex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1826 浏览

c++ - OpenCV、Matlab 和 STL 容器

最新版本的 OpenCV 中的许多功能都需要使用 STL 容器。尝试在 Matlab MEX 文件中使用它们时遇到问题。我正在从 Matlab 中编译 MEX 文件。OpenCV 和 Matlab 都使用“/MD”标志,即“多线程 DLL”来生成代码。

编译器:MSVC++ 9.0 Matlab 2010a OpenCV 最新来自 SVN,我认为是 2.11。

我使用的代码非常简单:

这会编译,但在 Matlab MEX 文件中运行时会崩溃。崩溃发生在 OpenCV 的 vector::resize 中。旧接口(没有 STL 容器)工作正常,但已弃用。如何在 Matlab 和 OpenCV 之间使用 STL 容器?

0 投票
1 回答
1967 浏览

linux - 如何诊断为什么在 MATLAB 中执行 .mex 文件时无法加载 .so 文件?

我正在尝试将一个VideoIO用 MATLAB 调用的视频库用于机器学习项目。当我尝试在 MATLAB 中调用该库时,我收到一条错误消息,指出它找不到libavutil.so.50VideoIO 所依赖的 ffmpeg 库之一。我检查了一些不同的东西,但除了它没有运行之外,找不到任何看起来错误的东西。谁能建议其他检查以帮助我调试?

这是错误:

试图弄清楚出了什么问题,我发现vr分配在哪里:

我打印出来mfilename,然后在ldd它指向的文件上运行:

现在,通过复制粘贴 libavutil 的路径,我验证它是否正确:

所以该文件存在。现在在 MATLAB 中,我检查 MATLAB 的 LD_LIBRARY_PATH 变量:

这似乎是正确的,它包括/u/goodfeli/ffmpeg/libavutil/并通过复制粘贴它我可以验证没有错字:

对接下来要检查的内容有什么建议吗?提前致谢。

0 投票
0 回答
2802 浏览

gcc - 在 Intel MAC 上为 64 位 Matlab 编译 C 代码

我需要编译一段要从 matlab 调用的 C 代码(mex 编译)。我在 intel mac 上这样做,因为我使用的是 Matlab 的 R2010a (7.10.0.499),所以我想将 C 代码编译成 64 位版本。无论出于何种原因,仅使用 -arch=maci64 选项进行 mex 似乎不起作用......

作为一种解决方法,我直接在命令行上将 C 代码编译为 mexmaci64 文件。我使用 mex 发出的 gcc 调用(打开 -v 选项)作为起点。我设法将 C 代码编译为目标文件,但看起来我没有将 C 代码编译为正确的体系结构。

有谁知道如何更正下面的 gcc 调用,以便将 C 代码编译为 64 位 intel mac?

详情如下。

与往常一样,非常感谢任何帮助...

保持口渴,我的朋友们。:p

G

细节:

这是我进行编译和链接的方式:

以下是我收到的警告:

忽略警告并从 matlab 调用 BoxQP 函数会导致以下错误消息:

PS:我尝试将 -DMX_COMPAT_32 标志更改为 -DMX_COMPAT_64 但我确实得到了相同的警告和相同的错误......

PPS:我想提到我使用的是 Mac OS X 10.5.8(“热带”/plain-vanilla Leopard,即不是雪豹)可能是相关的。

PPPS:MATLAB 提供的 yprime.c 示例也是如此

0 投票
4 回答
3609 浏览

types - 使用 gfortran 强制显式变量声明

我正在使用 mex 从 matlab 链接一些 fortran 代码(f90),并且我偶尔会冻结 matlab。

过去,由于数据类型之间的不匹配(例如整数 * 4 与整数 * 8),我发生了冻结。

我链接的代码有许多隐式定义的变量,所以我想知道是否存在仅偶尔发生的隐藏数据类型冲突。

为了排除数据类型不匹配是导致冻结的原因,我希望编译器要求所有变量都被显式声明。

问题:

  1. 如何让 gfortran 要求在编译时显式声明所有变量?如果做不到这一点,有没有办法至少得到警告?

  2. gfortran 是否将“真实”数据类型解释为所有体系结构中的特定类型?如果是这样,它是哪一个(真实* 4,真实* 8,...)?

  3. 无论如何强制gfortran将“真实”数据类型解释为特定类型,例如“真实* 4”?

  4. 关于从 matlab 中的 mex 编译例程调用时导致 fortran 代码冻结的任何想法(数据类型不匹配除外)?

谢谢你的帮助。

在我弄清楚这一点之前,我将通过许多行代码尝试列出所有隐式定义的变量。不用说,我将非常感谢任何让我从如此无聊的任务中解脱出来的人......

最好的,

G。

0 投票
3 回答
507 浏览

.net - 如何在 ASP.NET MVC 2 应用程序中公开 WCF4 元数据端点

我有一个 ASP.NET MVC 2 应用程序,其中定义了 WCF 服务(.svc 文件使用来自不同项目的服务)。web.config WCF 部分如下所示:

问题是在浏览器中打开 RecordService.svc 后,我仍然得到“此服务的元数据发布当前已禁用”。消息...我如何启用 wsdl/mex?

0 投票
2 回答
11253 浏览

.net - 使用 WCF (https) 时 WSDL 超链接中的 URL 错误

我让我的 WCF 服务使用 HTTPS 运行,它显示了信息页,但“要测试此服务,...使用以下语法:”下面的 URL 是:

svcutil.exe https://servername.group.service.com/MyService.svc?wsdl(服务器的完整地址)

而不是正确的 URL https://my.service.com/MyService.svc?wsdl(分配的主机头),我怎样才能让它显示正确的 URL(<URL of the Service> + ?wsdl)?

我已经尝试更改<serviceMetadata httpsGetEnabled="true"/>为,但它只是说:“URI https://my.service.com/MyService.svc<serviceMetadata httpsGetEnabled="true" httpsGetUrl="https://my.service.com/MyService.svc"/>的注册已经存在”

0 投票
1 回答
1215 浏览

windows - 没有端点监听可以接受消息的

我有一个在 Windows 服务中运行的 WCF 服务。在http://localhost/有一个 mex-endpoint ...

我可以通过浏览器导航到它,但如果我使用 MetadataResolver.Resolve,将引发上述异常(内部异常为“远程服务器返回错误:(404)未找到。”)。

我发现的唯一区别是,浏览器使用 get 而 Visual Studio 使用 post。

我该怎么做才能让它运行?

这里是服务器端:

这里的配置:

这里是客户端:

我希望,现在更清楚了!?

0 投票
2 回答
1083 浏览

java - 在 Matlab 代码中提高循环效率:使用 C 还是 Java 会这样做?

我想加快一些涉及循环的 matlab 代码。一个常见的解决方案是用 C 编写循环并从 matlab 中调用它。但是,我想知道是否可以通过在 Java 中实现循环来获得类似的好处——也许即时编译让它更快?

0 投票
3 回答
32756 浏览

visual-studio-2010 - 设置 mex 以使用 Visual Studio 2010 编译器

我安装了 Visual Studio 2010。但是,MATLAB 没有找到编译器。

如果我回答n这个问题,我会得到以下信息

编译我的 c++ 代码以使其在 MATLAB 中可用的最简单方法是什么?安装 Visual C++ 2008?oO

0 投票
2 回答
655 浏览

wcf - WCF:在 VS2010 中自动禁用 MEX 从 DEBUG 到 RELEASE 构建?

当安装了我们产品的 RELEASE 版本时,我的代码会自动阻止故障信息流向客户端。我想知道是否有一种聪明的方法可以让 MEX 元数据在我们的 RELEASE 版本中不可用。这是我为自动禁用故障信息所做的工作,我在以下链接中找到了这些信息: http: //codeidol.com/csharp/wcf/Faults/Fault-Contracts/