[CPMD-list] hi

Reuti reuti at staff.uni-marburg.de
Thu Sep 16 18:07:02 CEST 2004


Wolfi,

> > $ rename .so .so.disabled *.so
>
> This seems complicated. Isn't it enough to add -static during the linker
> stepp in your Makefile, as 
> LFLAGS=... -static ...
> or
> LDFLAGS=... -static ...

I think it's simply a matter of personal taste, how to solve it. It started 
with the following bug in the Intel 8.0 compiler (which also other users found 
according to the Intel forum for 8.0 [in 7.1 it was working, I have check the 
fresh 8.1 now: seems the libcxa is no longer used for new compiled programs at 
all, but maybe I'm wrong]):

-static-libcxa:

is working if you compile a program: Intel libs static, system libs dynamic

-static-libcxa -shared:

to build a shared library (so I couldn't use -static) (with the same policy: 
Intel libs static, system libs dynamic) *all* Intel libs are also dynamic (as 
if -i_dynamic was given). So I found disabling the .so is working for all 
situations for me.

Another way would be to give the 8.0 compiler the behavior of 7.1 one, to 
compile the PATH to the Intel libs into the program with an additional line in 
the icc.cfg and ifc.cfg, so you don't need to set the LD_LIBRARY_PATH:

-Xlinker -rpath -Xlinker /opt/intel_cc_80/lib

-Xlinker -rpath -Xlinker /opt/intel_fc_80/lib

Whether the PATH to the libs is compiled in, I checked with `readelf -a 
<mypgm>`.


Cheers - Reuti



More information about the CPMD-list mailing list