[Wien] undefined function calls when linking to BLAS/LAPACK

kjharris kjharris at ualberta.ca
Thu May 13 20:48:33 CEST 2004


I hope someone can give me a hand with the problem I'm having when attempting
to compile WIEN. I can compile with the given unoptimized lapack/blas 
libraries
when I use the flags with the intel version 8.0 compilers and specify the 
libraries twice:

     O   Compiler options:        -FR -mp -w
     L   Linker Flags:            -L../SRC_lib
     P   Preprocessor flags       '-DParallel'
     R   R_LIB (LAPACK+BLAS):     -llapack_lapw -lblas_lapw -lguide -lpthread 
-llapack_lapw -lblas_lapw -lguide -lpthread




but when I try to link in instead a compiled version of atlas via the flags:

     O   Compiler options:        -FR -mp -w
     L   Linker Flags:            
-L/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1
     P   Preprocessor flags       '-DParallel'
     R   R_LIB (LAPACK+BLAS):     -llapack -lf77blas -lcblas -latlas -lguide 
-lpthread -llapack -lf77blas -lcblas -latlas -lguide -lpthread


I get errors in SRC_lapw1, SRC_lapw2, SRC_lapwdm, SRC_lapwso, SRC_qtl that
look like:

.
.
.
rm pzher2m_tmp_.F
ifort  -o ./lapw1 abc.o atpar.o bandv1.o calkpt.o cbcomb.o coors.o cputim.o 
dblr
2k.o dgeqrl.o dgewy.o dgewyg.o dlbrfg.o dsbein1.o dscgst.o dstebz2.o dsyevx2.o 
d
symm2.o dsyr2m.o dsyrb4.o dsyrb5l.o dsyrdt4.o dsytrd2.o dsywyv.o dsyxev4.o 
dvbes
1.o eisps.o errclr.o errflg.o forfhs.o gaunt1.o gaunt2.o gbass.o gtfnam.o 
hamilt
.o hns.o horb.o inikpt.o inilpw.o lapw1.o latgen.o lmsort.o locdef.o lohns.o 
lop
w.o matmm.o modules.o nn.o outerr.o outwin.o pdsyevx16.o prtkpt.o prtres.o 
pzhee
vx16.o rdswar.o rint13.o rotate.o rotdef.o seclit.o seclr4.o seclr5.o select.o 
s
ervice.o setkpt.o setwar.o sphbes.o stern.o tapewf.o ustphx.o vectf.o warpin.o 
w
fpnt.o wfpnt1.o ylm.o zhcgst.o zheevx2.o zhemm2.o zher2m.o zhetrd2.o pdsyr2m.o 
p
zher2m.o -L/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1 -llapack -lf77blas 
-lcb
las -latlas -lguide -lpthread -llapack -lf77blas -lcblas -latlas -lguide 
-lpthre
ad 
bandv1.o(.text+0xcdc): In function `bandv1_':
: undefined reference to `dlarnv_'
dgeqrl.o(.text+0x124): In function `dgeqrl_':
: undefined reference to `dlarf_'
dgeqrl.o(.text+0x269): In function `dgeqrl_':
: undefined reference to `dlarf_'
dlbrfg.o(.text+0x94): In function `dlbrfg_':
: undefined reference to `dlapy2_'
dlbrfg.o(.text+0xf5): In function `dlbrfg_':
: undefined reference to `dlamch_'
dlbrfg.o(.text+0x105): In function `dlbrfg_':
: undefined reference to `dlamch_'
dlbrfg.o(.text+0x1d7): In function `dlbrfg_':
: undefined reference to `dlapy2_'
dsbein1.o(.text+0x551): In function `dsbein1_':
: undefined reference to `dstein_'
dscgst.o(.text+0x278): In function `dscgst_':
: undefined reference to `dsygs2_'
dstebz2.o(.text+0x157): In function `dstebz2_':
: undefined reference to `dlamch_'
dstebz2.o(.text+0x16a): In function `dstebz2_':
: undefined reference to `dlamch_'
dstebz2.o(.text+0x95d): In function `dstebz2_':
: undefined reference to `dlaebz_'
dstebz2.o(.text+0xae9): In function `dstebz2_':
: undefined reference to `dlaebz_'
dstebz2.o(.text+0x14bb): In function `dstebz2_':
: undefined reference to `dlaebz_'
dsyevx2.o(.text+0x3ab): In function `dsyevx2_':
: undefined reference to `dlamch_'
dsyevx2.o(.text+0x3be): In function `dsyevx2_':
: undefined reference to `dlamch_'
dsyevx2.o(.text+0x4b8): In function `dsyevx2_':
: undefined reference to `dlansy_'
dsyevx2.o(.text+0x83b): In function `dsyevx2_':
: undefined reference to `dsterf_'
dsyevx2.o(.text+0xc9e): In function `dsyevx2_':
: undefined reference to `dlacpy_'
dsyevx2.o(.text+0xcd1): In function `dsyevx2_':
: undefined reference to `dorgtr_'
dsyevx2.o(.text+0xd3d): In function `dsyevx2_':
: undefined reference to `dsteqr_'
dsyevx2.o(.text+0xe78): In function `dsyevx2_':
: undefined reference to `dstein_'
dsyevx2.o(.text+0xed6): In function `dsyevx2_':
: undefined reference to `dormtr_'
dsyrdt4.o(.text+0x2b5): In function `dsyrdt4_':
: undefined reference to `dsbtrd_'
dsytrd2.o(.text+0x216): In function `dsytrd2_':
: undefined reference to `dlatrd_'
dsytrd2.o(.text+0x427): In function `dsytrd2_':
: undefined reference to `dsytd2_'
dsytrd2.o(.text+0x500): In function `dsytrd2_':
: undefined reference to `dlatrd_'
dsytrd2.o(.text+0x756): In function `dsytrd2_':
: undefined reference to `dsytd2_'
dsyxev4.o(.text+0x340): In function `dsyxev4_':
: undefined reference to `dlamch_'
dsyxev4.o(.text+0x353): In function `dsyxev4_':
: undefined reference to `dlamch_'
dsyxev4.o(.text+0x44d): In function `dsyxev4_':
: undefined reference to `dlansy_'
dsyxev4.o(.text+0x998): In function `dsyxev4_':
: undefined reference to `dormtr_'
seclit.o(.text+0x2329): In function `seclit_':
: undefined reference to `dsygst_'
seclit.o(.text+0x24f8): In function `seclit_':
: undefined reference to `dsyevx_'
zhcgst.o(.text+0x280): In function `zhcgst_':
: undefined reference to `zhegs2_'
zheevx2.o(.text+0x3e4): In function `zheevx2_':
: undefined reference to `dlamch_'
zheevx2.o(.text+0x3f7): In function `zheevx2_':
: undefined reference to `dlamch_'
zheevx2.o(.text+0x4f1): In function `zheevx2_':
: undefined reference to `zlanhe_'
zheevx2.o(.text+0x83c): In function `zheevx2_':
: undefined reference to `dsterf_'
zheevx2.o(.text+0xca1): In function `zheevx2_':
: undefined reference to `zlacpy_'
zheevx2.o(.text+0xcd4): In function `zheevx2_':
: undefined reference to `zungtr_'
zheevx2.o(.text+0xd5b): In function `zheevx2_':
: undefined reference to `zsteqr_'
zheevx2.o(.text+0xe89): In function `zheevx2_':
: undefined reference to `zstein_'
zheevx2.o(.text+0xee4): In function `zheevx2_':
: undefined reference to `zunmtr_'
zhetrd2.o(.text+0x232): In function `zhetrd2_':
: undefined reference to `zlatrd_'
zhetrd2.o(.text+0x48b): In function `zhetrd2_':
: undefined reference to `zhetd2_'
zhetrd2.o(.text+0x56a): In function `zhetrd2_':
: undefined reference to `zlatrd_'
zhetrd2.o(.text+0x806): In function `zhetrd2_':
: undefined reference to `zhetd2_'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x10
b):
 In function `ilaenv_':
: undefined reference to `s_copy'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x16
7):
 In function `ilaenv_':
: undefined reference to `s_copy'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x1d
0):
 In function `ilaenv_':
: undefined reference to `s_copy'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x1f
4):
 In function `ilaenv_':
: undefined reference to `s_copy'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x21
8):
 In function `ilaenv_':
: undefined reference to `s_copy'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x2b
9):
 In function `ilaenv_':
: undefined reference to `s_cmp'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x2e
5):
 In function `ilaenv_':
: undefined reference to `s_cmp'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x30
d):
 In function `ilaenv_':
: undefined reference to `s_cmp'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x33
5):
 In function `ilaenv_':
: undefined reference to `s_cmp'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x35
d):
 In function `ilaenv_':
: undefined reference to `s_cmp'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/liblapack.a(ilaenv.o)(.text+0x38
9):
 more undefined references to `s_cmp' follow
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/libf77blas.a(xerbla.o)(.text+0xb
): 
In function `xerbla_':
: undefined reference to `s_wsfe'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/libf77blas.a(xerbla.o)(.text+0x2
7):
 In function `xerbla_':
: undefined reference to `do_fio'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/libf77blas.a(xerbla.o)(.text+0x4
3):
 In function `xerbla_':
: undefined reference to `do_fio'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/libf77blas.a(xerbla.o)(.text+0x4
8):
 In function `xerbla_':
: undefined reference to `e_wsfe'
/home/softinstalls/ATLAS/lib/Linux_ATHLONSSE1/libf77blas.a(xerbla.o)(.text+0x5
c):
 In function `xerbla_':
: undefined reference to `s_stop'
make[1]: *** [lapw1] Error 1
make[1]: Leaving directory `/home/softinstalls/wien/SRC_lapw1'
make: *** [real] Error 2


I thought perhaps I had built atlas/blas wrong so I downloaded a pre-compiled 
version
from the atlas website and ran it with the flags:

     O   Compiler options:        -FR -mp -w
     L   Linker Flags:            -L/home/softinstalls/Linux_ATHLON/lib
     P   Preprocessor flags       '-DParallel'
     R   R_LIB (LAPACK+BLAS):     -llapack -lf77blas -lcblas -latlas -lguide 
-lpthread -llapack -lf77blas -lcblas -latlas -lguide -lpthread

only to find the same errors as with the ATLAS that I built.


-------------------

Which of the ATLAS libraries are necessary to link to?
Any suggestions for a  fix?



p.s.
Does anyone run one of the intel compilers on amd athlon-XP architecture? does 
it work at all? speed compared to ATLAS?





More information about the Wien mailing list