MATLAB Answers

Error using mex: undefined reference for user build package

49 views (last 30 days)
Economist_101
Economist_101 on 15 Jul 2019
Edited: Jan on 17 Jul 2019
I run into the the following issue when I try to compile a user-build mex function :
>> mex kalcvf.c
Building with 'gcc'.
Error using mex
/tmp/mex_40203179616654_15298/kalcvf.o: In function `kalcvf':
kalcvf.c:(.text+0x120): undefined reference to `dcopy_'
(...)
the folder includes several files, such as
dlyap.c
kalcvf.c
kalcvf.def
kalcvf.vcproj
kalcvf.vcxproj
kalcvf.filters
kalcvf.user
matlib.c
matlib.h
and in a parent directory
mex.ncb
mex.sdf
mex.sln
What additional steps do I need to take in order to compile the mex function?

  4 Comments

Show 1 older comment
Economist_101
Economist_101 on 16 Jul 2019
Jan, many thanks for this.
I indeed did not use those libraries (and did not know I should). Running the code returns the following error
Error using mex
gcc: error: libmwlapack.lib: No such file or directory
gcc: error: libmwblas.lib: No such file or directory
I did not find those files anywhere in my matlab folder, nor online. Where should I look? (I am running Matlab 2019a 64bit on a Linux Ubuntu 18.04).
Any pointer is much appreciated!
Economist_101
Economist_101 on 17 Jul 2019
Perfect, this did the trick:
mex -v -R2018a kalcvf/kalcvf.c kalcvf/dlyap.c kalcvf/matlib.c -lmwblas -lmwlapack

Sign in to comment.

Accepted Answer

More Answers (1)

James Tursa
James Tursa on 16 Jul 2019
Try looking in the MATLAB/R2019a/extern/lib folder for versions of these files appropriate for your system. They might have slightly different names than above, but should have lapack and blas as part of the names.

  0 Comments

Sign in to comment.

Sign in to answer this question.