problems compiling molpro2002.6 with ifc and mkl on linux xeon
Nick Wilson
N.Wilson at bham.ac.uk
Thu Jul 31 10:41:20 BST 2003
Dear Garold,
When compiling on a xeon you should do
./configure -p4
because the configuration process doesn't recognise the xeon processor.
Also mkl6.0 puts the blas files in a different directory than configure
expects and so it doesn't see them. As a workaround if you do
ln -s /opt/intel/mkl60 /opt/intel/mkl
then configure will give you the right options for linking in the blas:
-L/opt/intel/mkl/lib/32 -lmkl_p4 -Wl,-rpath,/opt/intel/mkl/lib/32
and the lapack:
-L/opt/intel/mkl/lib/32 -lmkl_lapack -Wl,-rpath,/opt/intel/mkl/lib/32
which you can then change from mkl to mkl60 if you want.
The reason you're getting the conflicts is because configure didn't find
lapack so you don't have the lapack preprocessor flag set and molpro is
delivering it's own lapack routines in addition to the one's you linked
in with mkl_lapack.
So you should delete your CONFIG file and after the configure process
you should see the following lines in your CONFIG file:
FTCFLAGS="blas1 blas2 blas3 lapack"
BLASLIB="-L/opt/intel/mkl/lib/32 -lmkl_p4
-Wl,-rpath,/opt/intel/mkl/lib/32 "
LAPACKLIB="-L/opt/intel/mkl/lib/32 -lmkl_lapack
-Wl,-rpath,/opt/intel/mkl/lib/32 "
ARCHNAME="p4"
BLASLIB_p4="-L/opt/intel/mkl/lib/32 -lmkl_p4
-Wl,-rpath,/opt/intel/mkl/lib/32 "
LAPACKLIB_p4="-L/opt/intel/mkl/lib/32 -lmkl_lapack
-Wl,-rpath,/opt/intel/mkl/lib/32 "
Hope it works,
Best wishes,
Nick Wilson
Garold Murdachaew wrote:
> Dear molpro experts,
>
> I am trying to compile molpro2002.6 with the intel fortran compiler ifc7.1 and
> the intel blas mkl6.0 on a dual Xeon. I am trying to first successfully compile
> a single processor binary before I even consider an mpp version.
>
> The first problem that had to be fixed was the Red Hat 9 / ifc incompatibilty
> problem which was done as described in
>
> http://www.wien2k.at/reg_user/faq/redhat90.html
>
> The next problem was that apparently the new mkl6.0 (as opposed to the previous
> mkl5.2) defines the functions / subroutines blas2, lsame, and xerbla which occur
> in a molpro file, molpro2002.6/src/blas/blas2.f. The simple remedy is to make
> these changes in the file (change names of these routines from XERBLA to
> XXERBLA, etc., when they are defined to avoid the conflict and use the mkl-
> supplied routines instead):
>
> % diff blas2.f_original blas2.f
> 2c2
> < subroutine blas2
> ---
>
>> subroutine bblas2
>
> 5c5
> < SUBROUTINE XERBLA ( SRNAME, INFO )
> ---
>
>> SUBROUTINE XXERBLA ( SRNAME, INFO )
>
> 14c14
> < * XERBLA is an error handler for the Level 2 BLAS routines.
> ---
>
>>* XXERBLA is an error handler for the Level 2 BLAS routines.
>
> 27c27
> < * called XERBLA.
> ---
>
>>* called XXERBLA.
>
> 48c48
> < * End of XERBLA.
> ---
>
>>* End of XXERBLA.
>
> 53c53
> < LOGICAL FUNCTION LSAME( CA, CB )
> ---
>
>> LOGICAL FUNCTION LLSAME( CA, CB )
>
> 67c67
> < * LSAME returns .TRUE. if CA is the same letter as CB regardless of
> ---
>
>>* LLSAME returns .TRUE. if CA is the same letter as CB regardless of
>
> 87,88c87,88
> < LSAME = CA.EQ.CB
> < IF( LSAME )
> ---
>
>> LLSAME = CA.EQ.CB
>> IF( LLSAME )
>
> 131c131
> < LSAME = INTA.EQ.INTB
> ---
>
>> LLSAME = INTA.EQ.INTB
>
> 135c135
> < * End of LSAME
> ---
>
>>* End of LLSAME
>
>
> This seems to work and I can compile and link without errors. (I forgot to
> mention that in configuring I chose blas level 3 so shouldn't the mkl blas be
> used by default? Oh, I guess it's a new change in mkl in going from version 5.2
> to 6.0.)
>
> However, when I subsequently do:
>
> % make quicktest >& make_quicktest.log &
>
> the log shows, e.g.,
>
> Running test job h2o_vdz.test
>
>
> ** Address Error **
>
>
> End of diagnostics
>
> I would appreciate your suggestions.
>
> By the way, I should mention that I am successfully running molpro2002.6 installed
> from an rpm on this system.
>
> Thank you for your time and attention,
> Garold Murdachaew
>
>
> ps: I am including the CONFIG file, the make_quicktest.log file, and the
> report.2002.6.unix-linux.mp20.garold.4.0.ifc.tar.gz as attachments.
>
>
More information about the Molpro-user
mailing list