【发布时间】:2013-06-11 00:33:25
【问题描述】:
我正在尝试编译一个 C++ 函数(找到 here)。我下载了必要的包,安装了 Microsoft Windows SDK 7.1,使用mex -setup 将其链接到 MATLAB,然后将函数包解压缩到我的 MATLAB 路径中。
当我运行命令时:
mex -output Faddeeva_w -O Faddeeva_w_mex.cc Faddeeva.cc
我收到错误消息:
C:\PROGRA~1\MATLAB\R2013A\BIN\MEX.PL: Error: 'Faddeeva_w_mex.cc' not found.
但如果我输入 which Faddeeva_w_mex.cc 我会得到:
C:\Users\craigim\Documents\Code\Matlab\Faddeeva-MATLAB\Faddeeva_w_mex.cc
所以 MATLAB 和 which 命令在查找文件时没有问题,但 mex 丢失了。这是我第一次尝试用mex 编译一些东西,所以我真的不知道从哪里开始。 mex 是否有我必须设置的不同路径变量?
我在 Windows 7 64 位机器上使用 MATLAB 2013a,其 SDK 7.1 版本从 MATLAB List of supported compilers 链接。
【问题讨论】:
-
which是个女巫...有时是个 b$%#ch... -
尝试将
-v标志添加到您对mex的调用中,看看详细信息是否可以为您提供更多信息。 -
在这种情况下非常简单:只需下载 zip 文件,将其解压缩,
cd到该目录并运行Faddeeva_build。我自己也试过了。