当我尝试在Windows上编译.mex文件时,出现以下错误。我该如何解决这个问题?
使用mex时出错
MEX无法找到图书馆' mwblas'使用-l选项指定。
指定此库的路径
MEX查找具有以下名称之一的文件:
libmwblas.lib
mwblas.lib
请使用-L选项
答案 0 :(得分:1)
如错误消息所示,您需要使用.lib
选项指定-L
文件所在的目录,或指定.lib
文件的完整路径作为输入到mex
。该库位于matlabroot/extern/lib
。所以你可以做类似
blas = fullfile(matlabroot,'extern','lib',computer('arch'),'microsoft', 'libmwblas.lib');
mex('-largeArrayDims', 'mymexfile.cpp', blas)
或者您可以使用-L
libdir = fullfile(matlabroot,'extern','lib',computer('arch'),'microsoft');
mex('-largeArrayDims', ['-L', libdir], '-lmwblas', 'mymexfile.cpp', )
有关编译mex文件以使用LAPACK和BLAS的更多信息是here