在MATLAB脚本中设置mex文件的名称和路径

时间:2016-11-08 09:47:40

标签: matlab output mex

我想控制mex文件的路径和结果文件名。

这就是我的构建命令当前的样子:

sourceFilePath = [tempname,'.cpp']; libDir = ['-L' libDir];  libName = ['-l' libName]; headerDir = ['-I' headerDir];

mex(headerDir,libDir,sourceFilePath,libName);

这很好用。但现在我想使用自定义的mex文件名和自定义路径。

我在official docu中看到有选项 -outdir -output 。所以我尝试以类似的方式对待那些人:

outputDir = ['-outdir ' tempdir];

mex(headerDir,libDir,sourceFilePath,libName,outputDir);

我也试过没有空间。但是我得到了这个错误:

  

使用mex Unknown MEX参数' -outdir时出错   C:\用户\ SELMAO〜1 \应用程序数据\本地\ TEMP \'

当我尝试使用 -output 选项时,会出现同样的问题。

有什么想法吗?提前谢谢!

2 个答案:

答案 0 :(得分:1)

奇怪。

如果我将内联选项设置为有效。如果我像以前一样设置它,作为一个整体变量,它不会。

mex(headerDir,libDir,sourceFilePath,libName,'-outdir',tempname);

这可能有助于其他人。

答案 1 :(得分:1)

你在开场问题的例子中称错了:

 outputDir = ['-outdir ' tempdir];

 mex(headerDir,libDir,sourceFilePath,libName,outputDir);

应该是:

outputDir = {'-outdir' tempdir};

mex(headerDir,libDir,sourceFilePath,libName,outputDir{:});

错误的原因是你将两个命令组合成一个mex正确拒绝的字符串。