'loadlibrary' - .h file problem.

2 views (last 30 days)
Arwel
Arwel on 14 Mar 2018
Hi
I have a shared c library that I would like to load into Matlab with 'loadlibrary'. The .h file looks like this...
#define NESTRUN __nested_MOD_nestrun
/***************************************** C Interface to MultiNest **************************************************/
extern void NESTRUN(int *, int *, int *, int *, double *, double *, int *, int *, int *, int *, int *, double *,
char *, int *, int *, int *, int *, int *, int *, double *, int *, void (*Loglike)(double *, int *, int *,
double *, void *), void (*dumper)(int *, int *, int *, double **, double **, double **, double *,
double *, double *, double *, void *), void *context);
void run(int IS, int mmodal, int ceff, int nlive, double tol, double efr, int ndims, int nPar, int nClsPar,
int maxModes, int updInt, double Ztol, char root[], int seed, int *pWrap, int fb, int resume, int outfile,
int initMPI, double logZero, int maxiter, void (*LogLike)(double *, int *, int *, double *, void *),
void (*dumper)(int *, int *, int *, double **, double **, double **, double *, double *, double *, double *, void *),
void *context)
{
int i;
for (i = strlen(root); i < 100; i++) root[i] = ' ';
NESTRUN(&IS, &mmodal, &ceff, &nlive, &tol, &efr, &ndims, &nPar, &nClsPar, &maxModes, &updInt, &Ztol,
root, &seed, pWrap, &fb, &resume, &outfile, &initMPI, &logZero, &maxiter, LogLike, dumper, context);
}
However, when I try 'loadlibrary' I get the following result.....
>> loadlibrary('/usr/local/lib/libmultinest.so','multinest.h')
Error using loadlibrary
/tmp/tpcc01f289_311e_4350_b966_3ac536132665/libmultinest_thunk_glnxa64.so: undefined symbol: __nested_MOD_nestrun
So, what am I doing wrong, and why is Matlab not picking up on the #define? ('multinest.h' is in my current working directory btw....)
Cheers,
Arwel

Answers (0)

Categories

Find more on Scripts in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!