On Tue, Nov 4, 2008 at 7:34 PM, <plummer@iarc.fr> wrote:

> I can see a couple of problems:
>
> 1) No "-lpthread" in --with-blas
> 2) No "-L" prefix in the library path in --with-lapack
>
> In addition, I don't think you need to add -lmkl to --with-lapack,
> although that is probably harmless.
>
> Martyn
>
> Quoting Prof Brian Ripley <ripley@stats.ox.ac.uk>:
>
> > Look in config.log to see what's wrong.  (E.g. is
> > /opt/intel/mkl/10.0.2.018/lib/em64t in the ld.so cache?)
> >
> > And note the warnings in the manual about using --with-lapack: it is most
> > definitely not recommended.
> >
> > R-devel would be a better place to ask questions about this.
> >
>

Thanks Brian and Martyn,
I've tried it again with two sets of configure options:

./configure --with-blas='-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl -lguide
-lpthread' --with-lapack='-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_lapack'
--enable-R-shlib

./configure --with-blas='-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl -lguide
-lpthread' --enable-R-shlib

In both cases, the result is the same: R builds and uses its own BLAS. I
didn't find anything that looked like evidence that /opt/intel/mkl/
10.0.2.018/lib/em64t was getting into the ld.so cache, ie I didn't find
'ld.so' and 'opt/intel...' close together anywhere. Summaries of the BLAS-
or MKL-related bits in config.log follow, with the first set of options:

configure:36563: checking for dgemm_ in -L/opt/intel/mkl/
10.0.2.018/lib/em64t -lmkl -lguide -lpthread
configure:36594: gcc -std=gnu99 -o conftest -g -O2 -fpic
 -I/usr/local/include  -L/usr/local/lib64 conftest.c -L/opt/intel/mkl/
10.0.2.018/lib/em64t -lmkl -lguide -lpthread  -lgfortran -lm -ldl -lm  >&5
conftest.c: In function 'main':
conftest.c:187: warning: implicit declaration of function 'dgemm_'
configure:36600: $? = 0
configure:36616: result: yes
configure:37408: checking whether double complex BLAS can be used
configure:37481: result: no
...
BLAS_LIBS0=''
BLAS_LIBS='-L$(R_HOME)/lib$(R_ARCH) -lRblas'
BLAS_SHLIB_FALSE='#'
BLAS_SHLIB_TRUE=''
...
JAVA_LD_LIBRARY_PATH='$(JAVA_HOME)/lib/amd64/server:$(JAVA_HOME)/lib/amd64:$(JAVA_HOME)/../lib/amd64:/usr/local/lib64::/usr/lib64:/lib64:/usr/local/lib64:/usr/lib:/usr/local/lib:/lib:/opt/intel/fce/10.1.018/lib:/opt/intel/ipp/
5.3.4.080/em64t/sharedlib:/opt/intel/cce/10.1.018/lib:/opt/intel/mkl/10.0.2.018/lib/em64t:/usr/java/packages/lib/amd64:/lib:/usr/lib
'
JAVA_LIBS0='-L$(JAVA_HOME)/lib/amd64/server -L$(JAVA_HOME)/lib/amd64
-L$(JAVA_HOME)/../lib/amd64 -L/usr/local/lib64 -L -L/usr/lib64 -L/lib64
-L/usr/local/lib64 -L/usr/lib -L/usr/local/lib -L/lib
-L/opt/intel/fce/10.1.018/lib
-L/opt/intel/ipp/5.3.4.080/em64t/sharedlib-L/opt/intel/cce/10.1.018/lib
-L/opt/intel/mkl/
10.0.2.018/lib/em64t -L/usr/java/packages/lib/amd64 -L/lib -L/usr/lib -ljvm'
LAPACK_LDFLAGS=''
LAPACK_LIBS='-L$(R_HOME)/lib$(R_ARCH) -lRlapack'


and with the second set:


configure:36563: checking for dgemm_ in -L/opt/intel/mkl/
10.0.2.018/lib/em64t -lmkl -lguide -lpthread
configure:36594: gcc -std=gnu99 -o conftest -g -O2 -fpic
 -I/usr/local/include  -L/usr/local/lib64 conftest.c -L/opt/intel/mkl/
10.0.2.018/lib/em64t -lmkl -lguide -lpthread  -lgfortran -lm -ldl -lm  >&5
conftest.c: In function 'main':
conftest.c:187: warning: implicit declaration of function 'dgemm_'
configure:36600: $? = 0
configure:36616: result: yes
configure:37408: checking whether double complex BLAS can be used
configure:37481: result: no
...
BLAS_LIBS0=''
BLAS_LIBS='-L$(R_HOME)/lib$(R_ARCH) -lRblas'
BLAS_SHLIB_FALSE='#'
BLAS_SHLIB_TRUE=''
...
JAVA_LD_LIBRARY_PATH='$(JAVA_HOME)/lib/amd64/server:$(JAVA_HOME)/lib/amd64:$(JAVA_HOME)/../lib/amd64:/usr/local/lib64::/usr/lib64:/lib64:/usr/local/lib64:/usr/lib:/usr/local/lib:/lib:/opt/intel/fce/10.1.018/lib:/opt/intel/ipp/
5.3.4.080/em64t/sharedlib:/opt/intel/cce/10.1.018/lib:/opt/intel/mkl/10.0.2.018/lib/em64t:/usr/java/packages/lib/amd64:/lib:/usr/lib
'
JAVA_LIBS0='-L$(JAVA_HOME)/lib/amd64/server -L$(JAVA_HOME)/lib/amd64
-L$(JAVA_HOME)/../lib/amd64 -L/usr/local/lib64 -L -L/usr/lib64 -L/lib64
-L/usr/local/lib64 -L/usr/lib -L/usr/local/lib -L/lib
-L/opt/intel/fce/10.1.018/lib
-L/opt/intel/ipp/5.3.4.080/em64t/sharedlib-L/opt/intel/cce/10.1.018/lib
-L/opt/intel/mkl/
10.0.2.018/lib/em64t -L/usr/java/packages/lib/amd64 -L/lib -L/usr/lib -ljvm'
LAPACK_LDFLAGS=''
LAPACK_LIBS='-L$(R_HOME)/lib$(R_ARCH) -lRlapack'


Do either of these give us clues as to what's wrong?

Thanks,
Anand

	[[alternative HTML version deleted]]

