[Wien] WIEN2k_10.1 compilation problem (undefined reference to `__dlsym')
Maxim Rakitin
rms85 at physics.susu.ac.ru
Sat Oct 23 11:26:12 CEST 2010
Dear Prof. Blaha,
Yes, I sourced all Intel files for mkl, ifort and icc variables. I added
option -v to ifort comiler options, so I can see verbose output. Here is
what the compiler says for lapw0 program compilation:
=============================================================================
ifort -o lapw0 cputim.o modules.o reallocate.o ainv.o am05_xscss.o b88.o
blyp.o brj.o charg2.o charg3.o charge.o chfac.o chslv.o corgga.o
corpbe_revtpss.o corpbe_tpss.o cub_xc_back.o corlsd.o dfxhpbe.o
dfxrevtpss.o dfxtpss.o drho.o dylm.o efg.o energy.o epot1.o eramps.o
errclr.o errflg.o ev92.o ev92ex.o exch.o exch17.o fftw_para.o fithi.o
fxhpbe.o fx_revtpss.o fx_tpss.o gbass.o gcor.o gea.o geaex.o getff1.o
getfft.o gpoint.o gpointm.o grans.o gtfnam.o hcth.o ifflim.o kcis.o
lapw0.o latgen.o multfc.o multsu.o outerr.o pbea.o pbem.o pbe1.o pbe2.o
pbesol.o poissn.o potfac.o pwxad4.o pwxad5.o qranf.o readstruct.o
rean0.o rean1.o rean3.o rean4.o rhopw.o rotate.o rotdef.o rpbe.o
setff0.o setff1.o setfft.o setff2.o seval.o sevald.o sevaldd.o sevali.o
sevalin.o sicpbe.o sicpbe_revtpss.o sicpbe_tpss.o sogga.o sphbes.o
spline.o srolyl.o stern.o sumfac.o suml.o th1.o th2.o vpw91.o vresp.o
vs98.o vxc15.o vxc16.o vxc17.o vxc24.o vxc26.o vxclm2.o vxcpw2.o vxi35.o
vxi35a.o wc05.o workf1.o xcener.o xcpot.o xcpot1.o xcpot3.o ykav.o
ylm.o zfft3d.o W2kutils.o W2kinit.o -FR -w -mp1 -prec-div -pad -ip -O3
-xP -L/opt/intel/mkl/10.0.3.020/lib/em64t -shared-intel -lguide
-lpthread -L/opt/intel/mkl/10.0.3.020/lib/em64t -shared-intel
-lmkl_em64t -lmkl_core -lmkl_sequential -liomp5 -lmkl_lapack -lguide -v
Version 10.1
*/opt/intel//fce/10.1.015/bin/fortcom* -mP1OPT_version=1010
-mGLOB_source_language=GLOB_SOURCE_LANGUAGE_F90 -mGLOB_tune_for_fort
-mGLOB_use_fort_dope_vector -mP2OPT_static_promotion
-mP1OPT_print_version=FALSE -mP3OPT_use_mspp_call_convention
-mCG_use_gas_got_workaround=F -mP2OPT_align_option_used=TRUE
"-mGLOB_options_string=-o lapw0 -FR -w -mp1 -prec-div -pad -ip -O3 -xP
-L/opt/intel/mkl/10.0.3.020/lib/em64t -shared-intel -lguide -lpthread
-L/opt/intel/mkl/10.0.3.020/lib/em64t -shared-intel -lmkl_em64t
-lmkl_core -lmkl_sequential -liomp5 -lmkl_lapack -lguide -v"
-mGLOB_cxx_limited_range=FALSE -mP2OPT_eh_nirvana
-mGLOB_diag_file=cputim.diag
-mGLOB_as_output_backup_file_name=/tmp/ifortdzFyyeas_.s
-mGLOB_machine_model=GLOB_MACHINE_MODEL_EFI2
-mGLOB_fp_speculation=GLOB_FP_SPECULATION_FAST
-mGLOB_precision_mask=0x0000001f -mGLOB_extended_instructions=0x28
-mGLOB_advanced_optim=TRUE -mP2OPT_pad_local
-mP2OPT_subs_out_of_bound=FALSE -mGLOB_ansi_alias
-mIPOPT_ninl_user_level=2 -mIPOPT_args_in_regs=0
-mPGOPTI_value_profile_use=T -mGLOB_opt_level=3 -mIPOPT_activate
-mP2OPT_hlo_level=3 -mP2OPT_hlo -mPAROPT_par_report=1
-mCG_emit_as_seg_grouping -mIPOPT_link -mIPOPT_ipo_activate
-mIPOPT_ipo_mo_activate -mIPOPT_ipo_mo_nfiles=1
-mIPOPT_source_files_list=/tmp/ifortG56wzplst
-mIPOPT_short_data_info=/tmp/ifortfWfBj7sdata
-mIPOPT_link_script_file=/tmp/ifortmztF3Oscript -mIPOPT_global_data
"-mIPOPT_link_version=(GNU Binutils) 2.17.50.20070726-14 (SUSE Linux)"
"-mIPOPT_cmdline_link="/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crt1.o"
"/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crti.o"
"/usr/lib64/gcc/x86_64-suse-linux/4.1.2/crtbegin.o" "--eh-frame-hdr"
"-dynamic-linker" "/lib64/ld-linux-x86-64.so.2" "-o" "lapw0"
"/opt/intel//fce/10.1.015/lib/for_main.o" "cputim.o" "modules.o"
"reallocate.o" "ainv.o" "am05_xscss.o" "b88.o" "blyp.o" "brj.o"
"charg2.o" "charg3.o" "charge.o" "chfac.o" "chslv.o" "corgga.o"
"corpbe_revtpss.o" "corpbe_tpss.o" "cub_xc_back.o" "corlsd.o"
"dfxhpbe.o" "dfxrevtpss.o" "dfxtpss.o" "drho.o" "dylm.o" "efg.o"
"energy.o" "epot1.o" "eramps.o" "errclr.o" "errflg.o" "ev92.o"
"ev92ex.o" "exch.o" "exch17.o" "fftw_para.o" "fithi.o" "fxhpbe.o"
"fx_revtpss.o" "fx_tpss.o" "gbass.o" "gcor.o" "gea.o" "geaex.o"
"getff1.o" "getfft.o" "gpoint.o" "gpointm.o" "grans.o" "gtfnam.o"
"hcth.o" "ifflim.o" "kcis.o" "lapw0.o" "latgen.o" "multfc.o" "multsu.o"
"outerr.o" "pbea.o" "pbem.o" "pbe1.o" "pbe2.o" "pbesol.o" "poissn.o"
"potfac.o" "pwxad4.o" "pwxad5.o" "qranf.o" "readstruct.o" "rean0.o"
"rean1.o" "rean3.o" "rean4.o" "rhopw.o" "rotate.o" "rotdef.o" "rpbe.o"
"setff0.o" "setff1.o" "setfft.o" "setff2.o" "seval.o" "sevald.o"
"sevaldd.o" "sevali.o" "sevalin.o" "sicpbe.o" "sicpbe_revtpss.o"
"sicpbe_tpss.o" "sogga.o" "sphbes.o" "spline.o" "srolyl.o" "stern.o"
"sumfac.o" "suml.o" "th1.o" "th2.o" "vpw91.o" "vresp.o" "vs98.o"
"vxc15.o" "vxc16.o" "vxc17.o" "vxc24.o" "vxc26.o" "vxclm2.o" "vxcpw2.o"
"vxi35.o" "vxi35a.o" "wc05.o" "workf1.o" "xcener.o" "xcpot.o" "xcpot1.o"
"xcpot3.o" "ykav.o" "ylm.o" "zfft3d.o" "W2kutils.o" "W2kinit.o"
"-L/opt/intel/mkl/10.0.3.020/lib/em64t" "-lguide" "-lpthread"
"-L/opt/intel/mkl/10.0.3.020/lib/em64t" "-lmkl_em64t" "-lmkl_core"
"-lmkl_sequential" "-liomp5" "-lmkl_lapack" "-lguide"
"-L/panfs/panasas/opt/intel/mkl/10.0.3.020/lib/em64t"
"-L/panfs/panasas/opt/intel/mkl/10.0.3.020/lib/em64t"
"-L/opt/intel//fce/10.1.015/lib"
"-L/usr/lib64/gcc/x86_64-suse-linux/4.1.2/"
"-L/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64" "-lifport"
"-lifcore" "-limf" "-lsvml" "-lm" "-lipgo" "-lintlc" "-lc" "-lgcc_s"
"-lgcc" "-lirc_s" "-ldl" "-lc"
"/usr/lib64/gcc/x86_64-suse-linux/4.1.2/crtend.o"
"/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crtn.o""
-mIPOPT_save_il0 -mIPOPT_il_in_obj -mIPOPT_ipo_activate_warn=FALSE
-mIPOPT_obj_output_file_name=/tmp/ipo_ifortqevmli.o
"-mGLOB_linker_version=(GNU Binutils) 2.17.50.20070726-14 (SUSE Linux)"
-mP3OPT_asm_target=P3OPT_ASM_TARGET_GAS
-mGLOB_obj_output_file=/tmp/ipo_ifortqevmli.o
-mP1OPT_source_file_name=/tmp/ipo_ifortqevmli.f cputim.o modules.o
reallocate.o ainv.o am05_xscss.o b88.o blyp.o brj.o charg2.o charg3.o
charge.o chfac.o chslv.o corgga.o corpbe_revtpss.o corpbe_tpss.o
cub_xc_back.o corlsd.o dfxhpbe.o dfxrevtpss.o dfxtpss.o drho.o dylm.o
efg.o energy.o epot1.o eramps.o errclr.o errflg.o ev92.o ev92ex.o exch.o
exch17.o fftw_para.o fithi.o fxhpbe.o fx_revtpss.o fx_tpss.o gbass.o
gcor.o gea.o geaex.o getff1.o getfft.o gpoint.o gpointm.o grans.o
gtfnam.o hcth.o ifflim.o kcis.o lapw0.o latgen.o multfc.o multsu.o
outerr.o pbea.o pbem.o pbe1.o pbe2.o pbesol.o poissn.o potfac.o pwxad4.o
pwxad5.o qranf.o readstruct.o rean0.o rean1.o rean3.o rean4.o rhopw.o
rotate.o rotdef.o rpbe.o setff0.o setff1.o setfft.o setff2.o seval.o
sevald.o sevaldd.o sevali.o sevalin.o sicpbe.o sicpbe_revtpss.o
sicpbe_tpss.o sogga.o sphbes.o spline.o srolyl.o stern.o sumfac.o suml.o
th1.o th2.o vpw91.o vresp.o vs98.o vxc15.o vxc16.o vxc17.o vxc24.o
vxc26.o vxclm2.o vxcpw2.o vxi35.o vxi35a.o wc05.o workf1.o xcener.o
xcpot.o xcpot1.o xcpot3.o ykav.o ylm.o zfft3d.o W2kutils.o W2kinit.o
-mIPOPT_mo_unique_name=lapw0 -mIPOPT_object_files=/tmp/ifortvgIp5Ztxt
-mIPOPT_cmdline_link_new=/tmp/ifortYZdtPHtxt
*ld* --eh-frame-hdr -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o
lapw0 -L/opt/intel/mkl/10.0.3.020/lib/em64t
-L/opt/intel/mkl/10.0.3.020/lib/em64t
-L/panfs/panasas/opt/intel/mkl/10.0.3.020/lib/em64t
-L/panfs/panasas/opt/intel/mkl/10.0.3.020/lib/em64t
-L/opt/intel//fce/10.1.015/lib -L/usr/lib64/gcc/x86_64-suse-linux/4.1.2/
-L/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crt1.o
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crti.o
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/crtbegin.o
/opt/intel//fce/10.1.015/lib/for_main.o cputim.o modules.o reallocate.o
ainv.o am05_xscss.o b88.o blyp.o brj.o charg2.o charg3.o charge.o
chfac.o chslv.o corgga.o corpbe_revtpss.o corpbe_tpss.o cub_xc_back.o
corlsd.o dfxhpbe.o dfxrevtpss.o dfxtpss.o drho.o dylm.o efg.o energy.o
epot1.o eramps.o errclr.o errflg.o ev92.o ev92ex.o exch.o exch17.o
fftw_para.o fithi.o fxhpbe.o fx_revtpss.o fx_tpss.o gbass.o gcor.o gea.o
geaex.o getff1.o getfft.o gpoint.o gpointm.o grans.o gtfnam.o hcth.o
ifflim.o kcis.o lapw0.o latgen.o multfc.o multsu.o outerr.o pbea.o
pbem.o pbe1.o pbe2.o pbesol.o poissn.o potfac.o pwxad4.o pwxad5.o
qranf.o readstruct.o rean0.o rean1.o rean3.o rean4.o rhopw.o rotate.o
rotdef.o rpbe.o setff0.o setff1.o setfft.o setff2.o seval.o sevald.o
sevaldd.o sevali.o sevalin.o sicpbe.o sicpbe_revtpss.o sicpbe_tpss.o
sogga.o sphbes.o spline.o srolyl.o stern.o sumfac.o suml.o th1.o th2.o
vpw91.o vresp.o vs98.o vxc15.o vxc16.o vxc17.o vxc24.o vxc26.o vxclm2.o
vxcpw2.o vxi35.o vxi35a.o wc05.o workf1.o xcener.o xcpot.o xcpot1.o
xcpot3.o ykav.o ylm.o zfft3d.o W2kutils.o W2kinit.o -lguide -lpthread
-lmkl_em64t -lmkl_core -lmkl_sequential -liomp5 -lmkl_lapack -lguide
-lifport -lifcore -limf -lsvml -lm -lipgo -lintlc -lc -lgcc_s -lgcc
-lirc_s -ldl -lc /usr/lib64/gcc/x86_64-suse-linux/4.1.2/crtend.o
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/crtn.o
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/libdl.a(dlsym.o):
In function `dlsym':
(.text+0x5): undefined reference to `__dlsym'
rm /tmp/ifortYTJCRSlibgcc
rm /tmp/ifortqK1kBAgnudirs
rm /tmp/ifortvgIp5Ztxt
rm /tmp/ifortYZdtPHtxt
rm /tmp/ifortG56wzplst
rm /tmp/ifortfWfBj7sdata
rm /tmp/ifortmztF3Oscript
rm /tmp/ipo_ifortqevmli.o
rm /tmp/ifortcn9JNwgas
rm /tmp/ifortdzFyyeas_.s
rm /tmp/ifortNx4njWld_v
rm /tmp/ifortEtmJ4Dldashv
rm /tmp/ifortd2cHQlgnudirs
rm /tmp/ifortotVAD3arg
=============================================================================
So as we can see, there are 2 main commands - fortcom and ld (paths with
double slashes '//' seem to be work correctly). I tried to run them
manually in $WIENROOT/SRC_lapw0 directory. The first one completed
successfully, but the second command failed. Surprisingly, that when I
removed *-ldl* flag (which finds libdl.so/a), lapw0 was generated
without any problems. Although the exec was built, I don't know if it's
correct or no. Is libdl library necessary for all WIEN2k executables? Or
maybe linker cache isn't correct? Any ideas?
Thanks,
- Maxim
23.10.2010 12:35, Peter Blaha ?????:
> > To fix it I sourced mklvarsem64t.sh, so the $INCLUDE variable became
>
> Did you also "source" the corresponding file for the ifort compiler ?
>
> Am 22.10.2010 11:39, schrieb Maxim Rakitin:
>> Dear WIEN2k experts,
>>
>> I tried to compile WIEN2k_10.1 on the cluster of my university (SuSE
>> linux, Xeon 53XX processors), but I got an error during the process:
>>
>>
>> usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../lib64/libdl.a(dlsym.o):
>> In function `dlsym':
>> (.text+0x5): undefined reference to `__dlsym'
>>
>> Here is a part of the compilation log of lapw0 (serial version):
>>
>> icc -c W2kutils.c
>> ifort -FR -w -mp1 -prec-div -pad -ip -DINTEL_VML -O3 -xP -c
>> W2kinit.F
>> ifort -o lapw0 cputim.o modules.o reallocate.o ainv.o am05_xscss.o
>> b88.o blyp.o brj.o charg2.o charg3.o charge.o chfac.o chslv.o
>> corgga.o corpbe_revtpss.o corpbe_tpss.o cub_xc_back.o corlsd.o
>> dfxhpbe.o dfxrevtpss.o dfxtpss.o drho.o dylm.o efg.o energy.o
>> epot1.o eramps.o errclr.o errflg.o ev92.o ev92ex.o exch.o exch17.o
>> fftw_para.o fithi.o fxhpbe.o fx_revtpss.o fx_tpss.o gbass.o gcor.o
>> gea.o geaex.o getff1.o getfft.o gpoint.o gpointm.o grans.o gtfnam.o
>> hcth.o ifflim.o kcis.o lapw0.o latgen.o multfc.o multsu.o outerr.o
>> pbea.o pbem.o pbe1.o pbe2.o pbesol.o poissn.o potfac.o pwxad4.o
>> pwxad5.o qranf.o readstruct.o rean0.o rean1.o rean3.o rean4.o
>> rhopw.o rotate.o rotdef.o rpbe.o setff0.o setff1.o setfft.o setff2.o
>> seval.o sevald.o sevaldd.o sevali.o sevalin.o sicpbe.o
>> sicpbe_revtpss.o sicpbe_tpss.o sogga.o sphbes.o spline.o srolyl.o
>> stern.o sumfac.o suml.o th1.o th2.o vpw91.o vresp.o vs98.o vxc15.o
>> vxc16.o vxc17.o vxc24.o vxc26.o vxclm2.o vxcpw2.o vxi35.o vxi35a.o
>> wc05.o workf1.o xcener.o xcpot.o xcpot1.o xcpot3.o ykav.o ylm.o
>> zfft3d.o W2kutils.o W2kinit.o -FR -w -mp1 -prec-div -pad -ip
>> -DINTEL_VML -O3 -xP -L/opt/intel/mkl/10.0.3.020/lib/em64t -lguide
>> -lpthread -L/opt/intel/mkl/10.0.3.020/lib/em64t -lmkl_em64t
>> -lmkl_core -lmkl_sequential -liomp5 -lmkl_lapack -lguide -lpthread
>>
>> It seems to me that the problem is connected with new routines W2k*,
>> because when I compile the package without $INCLUDE wariable, I got the
>> following error:
>>
>> fortcom: Error: W2kinit.F, line 28: Cannot open include file
>> 'mkl_vml.fi'
>> include 'mkl_vml.fi'
>> ---------------^
>>
>> To fix it I sourced mklvarsem64t.sh, so the $INCLUDE variable became
>> available. But this produced the error in the beginning of this mail. I
>> tried different combinations of input parameters (FOPT, FPOPT, etc), but
>> this didn't help. FYI, in the previous versions of WIEN2k I haven't met
>> such kind of problems.
>>
>> Could anyboby please help me to find where the problem came from? I
>> really appreciate any help and advice. If you need additional
>> information on my compilation options or cluster details, please let me
>> know.
>>
>> Thanks a lot.
>>
>> --
>> Best regards,
>> Maxim Rakitin
>> Postgraduate student
>> South Ural State University,
>> 76 Lenin av., Chelyabinsk, Russia, 454080
>> Email:rms85 at physics.susu.ac.ru
>> Web:http://www.susu.ac.ru
>>
>>
>>
>> _______________________________________________
>> Wien mailing list
>> Wien at zeus.theochem.tuwien.ac.at
>> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://zeus.theochem.tuwien.ac.at/pipermail/wien/attachments/20101023/f67c31fa/attachment-0001.htm>
More information about the Wien
mailing list