-fpe-all=0 flag delivers undefined symbol: __for_ieee_store_env_

-fpe-all=0 flag delivers undefined symbol: __for_ieee_store_env_

Portrait de almioehi

Hy,

 Iam using composer_xe_2013.3.163/bin/intel64/ifort on a ScientificLinux6.4 machine (64bit).
The variable LD_LIBRARY_PATH is set to /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/

Upon compilation with -fpe-all=0, I get the following error message:
symbol lookup error: ./a.out: undefined symbol: __for_ieee_store_env_

The other compiler options are:
-O2 -zero -r8 -i8  -mcmodel medium -shared-intel -fp-model precise
, the last one is not the source of the problem (checked that)

google doesn't even know about for_ieee_store_env.

Any ideas would be appreciated - thanks

Christian

4 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.
Portrait de HeinzB (Intel)

Christian

this object is defined in libifcore.so.  For me, a compilation using your switches and similar compiler ( update 2 and 4 - don't have U3 installed) don't show this problem.   Can you compile your code using the --trace-symbol option like:

ifort -zero -O2 -r8   -i8  -mcmodel medium -shared-intel -fp-model precise -Wl,--trace-symbol,__for_ieee_store_env_  foo.f 

and post the output here ?

Please check too whether the right library is added too by using 'ldd a.out'. You can look at the details of the link step by  option -dryrun. May be you can see somethign unusual.

It could be related to your specific code. In case you can attach a sample showing the problem, I will look at it and will try on my system.

Heinz

 

Portrait de almioehi

Dear Heinz,

 thanks for the speedy answer.

This looks funny to me:

original/Code>ldd ./a.out
        linux-vdso.so.1 =>  (0x00007fffc4fff000)
        libifport.so.5 => /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/libifport.so.5 (0x00007fad3d8ad000)
        libifcore.so.5 => /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/libifcore.so.5 (0x00007fad3d576000)
        libimf.so => /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/libimf.so (0x00007fad3d0ba000)
        libsvml.so => /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/libsvml.so (0x00007fad3c6f0000)
        libm.so.6 => /lib64/libm.so.6 (0x00000031e0400000)
        libintlc.so.5 => /global/intel/composer_xe_2013.3.163/compiler/lib/intel64/libintlc.so.5 (0x00007fad3c48d000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00000031e0000000)
        libc.so.6 => /lib64/libc.so.6 (0x00000031df800000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000031e1c00000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000031dfc00000)
        /lib64/ld-linux-x86-64.so.2 (0x00000031df400000)

and
.../composer_xe_2013.3.163/bin/intel64/ifort -zero -O2 -r8   -i8  -mcmodel medium -shared-intel -fp-model precise -Wl,--trace-symbol,__for_ieee_store_env_  foo.f
ifort: command line warning #10212: -fp-model precise evaluates in source precision with Fortran.
.../composer_xe_2013.3.163/compiler/lib/intel64/libifcore.so.5: definition of __for_ieee_store_env_

Thanks,

 Christian

Portrait de HeinzB (Intel)

This looks perfect - nothing unusual:  You have the object defined too in libifcore and the library is found. The only item left is  a potential issue regarding the link order. Could you send me a sample source file and the exact compiler / linker invocation line ? You can use the option 'Send Author a Message' to avoid this being published. I too can send you an email thus that you can attach this to a reply.

Connectez-vous pour laisser un commentaire.