[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