我想控制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 选项时,会出现同样的问题。
有什么想法吗?提前谢谢!
答案 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正确拒绝的字符串。