Mex -largeArrayDims in Linux

조회 수: 2 (최근 30일)
elham ramin
elham ramin 2019년 10월 11일
댓글: elham ramin 2019년 10월 28일
Hi,
I would like to run my matlab code on Linux.
I would need to reformulate this line:
lapacklib = fullfile(matlabroot, ...
'extern', 'lib', 'win64', 'microsoft', 'libmwlapack.lib');
mex('-v', '-g', '-largeArrayDims-largeArrayDims', 'PCM_speciation1_DAE.c', lapacklib);
I hve tried this formulation: mex -largeArrayDims PCM_speciation1_DAE.c
But I get this error: Error using mex
/var/tmp/pbs.14518.hnode4/mex_5537398213038998_2534/PCM_speciation1_DAE.o: In function `MatDiv':
PCM_speciation1_DAE.c:(.text+0x665b): undefined reference to `dgesv_'
collect2: error: ld returned 1 exit status
Thank you in advance for the help.

채택된 답변

James Tursa
James Tursa 2019년 10월 11일
편집: James Tursa 2019년 10월 11일
You didn't give it the LAPACK library to link to, so there is no dgesv_ function, hence the error. You need to take this:
lapacklib = fullfile(matlabroot, ...
'extern', 'lib', 'win64', 'microsoft', 'libmwlapack.lib');
and turn it into the location and name for your system (which obviously isn't going to be 'win64'), and feed that into the mex command like it originally was.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Write C Functions Callable from MATLAB (MEX Files)에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by