[Wien] compilation error

Gerhard Fecher fecher at uni-mainz.de
Mon Nov 24 12:27:17 CET 2008


For the 32 bit system one should NOT USE static linking !
otherwise the next e-mail will be about a segmentation fault.

usually the parts not using lapack routines need libguide and libpthread

this goes together with the correct path (-L\whereismylibrary) in the line with the Linker Flags

for certain subroutines one needs lapack routines best from the MKL (at least on all Intel based systems)
the libraries  libmkl_lapack  libmkl_core libmkl_em64t go together with  libguide and libpthread to the R_LIB (LAPACK+BLAS)
again with with the correct path (-L\whereismylibrary) for static linking one needs to add -static before giving the libraries,
Do never run at once programs with different versions of libguide linked statically. 

On some systems one does not need to specify libguide and libpthread because they are found automatically by the linker.

On 32bit systems you need dynamic linking (that is default if you do not give -static), you may need different libraries from
the 64-bit system, check the MKL manual, as those libraries changed a lot during the last vesrions of MKL.

libsvml is an Intel specific vector math library and may do a better job compared to the -DINTEL_VML macro used in one subroutine only, however, I did not check that for the latest Versions.
Before use, check the Intel manuals.

As suggested by the lapw_config, aleways check the files compile.msg to see what is missing.

Be sure to know the difference between the notation as libguide and -lguide and  libraries with extensions .a or .so

Ciao
Gerhard

====================================
Dr. Gerhard H. Fecher
Institut of Inorganic and Analytical Chemistry
Johannes Gutenberg - University
55099 Mainz
________________________________________
Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at zeus.theochem.tuwien.ac.at] im Auftrag von shqx [shqx at fjirsm.ac.cn]
Gesendet: Montag, 24. November 2008 11:57
An: a mailing list forwien2k users
Betreff: Re: [Wien] compilation error

Yes, libmkl_em64t doen't exist in the .../mkl/lib/32, and it is in the .../mkl/lib/em64t. So he should also change the link flags to "-L/opt/intel/Compiler/11.0/069/mkl/lib/em64t -i-static " if his computer is em64t system.
The options for compilation and link is machine dependent. If he has an IA32 system, so maybe these will help:

-FR -w -mp1 -prec_div -pad -ip -DINTEL_VML
-L/opt/intel/Compiler/11.0/069/mkl/lib/32 -i-static -lguide -lguide_stats -lsvml -lpthread
-lmkl_lapack -lmkl_ia32

The reason he didn't succeed in compilation is because those libs he specified obviously don't belong to Intel MKL and certainly the link should fail.

Xia

> I don't think that libmkl_em64t
> is found in opt/intel/Compiler/11.0/069/mkl/lib/32
>
> why do you try to use libraries from the 32 bit mkl ?
>
> what is the reason to use -i-static without giving any library to be linked that way ?
>
>
>
> Ciao
> Gerhard
>
> ====================================
> Dr. Gerhard H. Fecher
> Institut of Inorganic and Analytical Chemistry
> Johannes Gutenberg - University
> 55099 Mainz
> ________________________________________
> Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at zeus.theochem.tuwien.ac.at] im Auftrag von shqx [shqx at fjirsm.ac.cn]
> Gesendet: Montag, 24. November 2008 01:02
> An: a mailing list forwien2k users
> Betreff: Re: [Wien] compilation error
>
> Dear Nour:
>
> Try this R_LIB: -lmkl_lapack -lmkl_core -lmkl_em64t -lguide -pthread
> Good luck!
>
> Xia
>
>
> > Dear Wien users,
> >
> > I am using intel fortran 11.0 amd Mkl libraries 10.0 with fedora core 8,   when executing  siteconfig, I get the following message:
> >
> > SRC_lapw2/compile.msg:make[1]: *** [lapw2] Error 1
> >
> > SRC_lapw2/compile.msg:make: *** [real] Error 2
> >
> > SRC_lapw2/compile.msg:make[1]: *** [lapw2c] Error 1
> >
> > SRC_lapw2/compile.msg:make: *** [complex] Error 2
> >
> > SRC_lapwdm/compile.msg:make[1]: *** [lapwdm] Error 1
> >
> > SRC_lapwdm/compile.msg:make: *** [real] Error 2
> >
> > SRC_lapwdm/compile.msg:make[1]: *** [lapwdmc] Error 1
> >
> > SRC_lapwdm/compile.msg:make: *** [complex] Error 2
> >
> > SRC_lapwso/compile.msg:make: *** [lapwso] Error 1
> >
> > SRC_mini/compile.msg:make: *** [mini] Error 1
> >
> > SRC_pairhess/compile.msg:make: *** [pairhess] Error 1
> >
> > SRC_qtl/compile.msg:make: *** [qtl] Error 1
> >
> > SRC_structeditor/SRC_ncmsymmetry/compile.msg:make: *** [ncmsymmetry] Error 1
> >
> >
> >
> > I have used the following compiling options:
> >
> > Current settings:
> >  O   Compiler options:        -FR -mp1 -w -prec_div -pc80 -pad -align -DINTEL_VML -traceback
> >  L   Linker Flags:            $(OPT) -L/opt/intel/Compiler/11.0/069/mkl/lib/32 -i-static
> >  P   Preprocessor flags       '-DParallel'
> >  R   R_LIB (LAPACK+BLAS):     -llapack_lapw -lblas_lapw -llapack_lapw -lblas_lapw
> >
> > Thank you for your help. Nour
> >
> >
> >
> >
> >
> >
>
>
>
>





More information about the Wien mailing list