[Rd] Problem with shared library and lapack under windows

bstr nicola.lunardon at hotmail.it
Wed Jun 3 09:48:05 CEST 2015


Hi all,

I have a C function, say Cfun, that calls Lapack's DGEMM routine and I need
to create a shared library to use Cfun inside R. The C file is the following

#include<stdio.h>
#include<R.h>
#include<R_ext/Lapack.h>


void Cfun(double *res, double *X, int *n, int *q)
{
	char *ptr_TRANSA, TRANSA='T', *ptr_TRANSB, TRANSB='N';
	ptr_TRANSA=&TRANSA;
	ptr_TRANSB=&TRANSB;
	double *ptr_ALPHA, ALPHA=1.0, *ptr_BETA, BETA=0.0;
	ptr_ALPHA=&ALPHA;
	ptr_BETA=&BETA;

	dgemm_(ptr_TRANSA, ptr_TRANSB, q, q, n, ptr_ALPHA, X, n, X, n, ptr_BETA,
res, q);
}

In Ubuntu I have no problem in compiling:  R CMD SHLIB -llapack myfile.c.
However, under Windows the -llapack flag is not recognised and I am able to
get the code compiled only if I build an R package with the suitable
Makevars file options: PKG_LIBS=$(LAPACK_LIBS) $(FLIBS). Is there a way to
get the .dll without resorting to build a package?

Thanks in advance,

N. Lunardon





--
View this message in context: http://r.789695.n4.nabble.com/Problem-with-shared-library-and-lapack-under-windows-tp4708092.html
Sent from the R devel mailing list archive at Nabble.com.



More information about the R-devel mailing list