[Pw_forum] desc_init

Lazaro Calderin calderin at physics.queensu.ca
Wed Oct 29 21:08:01 CET 2008


Hello everyone,

Is there any special reason for the subroutine desc_init to be in more
than one file ( PW/regterg.f90, PW/cegterg.f90, PW/rotate_wfc_k.f90,
PW/rotate_wfc_gamma.f90) ?

That gives the following errors for linkers that do not accept symbol
multi definition by default.

The errors are (versions 4.0.2 and 4.0.3):

ld: fatal: symbol `__DESC_INIT$COOR_IP$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file libpw.a(regterg.o)
type=OBJT);
ld: fatal: symbol `__DESC_INIT$RANK$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file libpw.a(regterg.o)
type=OBJT);
ld: fatal: symbol `__DESC_INIT$COOR_IP$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file libpw.a(rotate_wfc_k.o)
type=OBJT);
ld: fatal: symbol `__DESC_INIT$RANK$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file libpw.a(rotate_wfc_k.o)
type=OBJT);
ld: fatal: symbol `__DESC_INIT$COOR_IP$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file
libpw.a(rotate_wfc_gamma.o) type=OBJT);
ld: fatal: symbol `__DESC_INIT$RANK$1' is multiply-defined:
        (file libpw.a(cegterg.o) type=OBJT; file
libpw.a(rotate_wfc_gamma.o) type=OBJT);

A work around is to use -z muldefs for ld.


Thanks, L.

-- 
Lazaro Calderin
Department of Physics
Queen's University
Kingston, Ontario K7L 3N6, Canada
+1 613 533 6000 ext 74811
calderin at physics.queensu.ca



More information about the users mailing list