我的项目具有以下结构:
MainFolder:
>>InitToolbox.m //Here addpaths are executed
>>Compile.m //Here mex compilations calls are made
AlgorithmsFolder //MATLAB code
UtilitiesFolder //MATLAB code
MexFolder // C++ files
>>test1.cpp
>>test2.cu
当我运行(在compile.m
或直接在命令行中)以下编译器调用时:
mex -v -largeArrayDims ./MexFolder/test1.cpp ./MexFolder/test2.cu
输出test1.mexw64
保存在MainFolder
。
有没有办法修改编译器调用以在文件的原始位置或特定的用户定义位置创建.mexw64
文件?
答案 0 :(得分:3)
您想使用mex
outdir
选项指定输出目录
mex -v -largeArrayDims ./MexFolder/test1.cpp ./MexFolder/test2.cu -outdir output_directory
上面的“output_directory”可以是您想要的任何路径。
它也可以是变量,但这需要您更新调用方式mex
outputFolder = 'path/to/folder';
mex('-v', '-largeArrayDims', 'MexFolder/test1.cpp', ...
'MexFolder/test2.cu', '-outputdir', outputFolder);