[Pw_forum] Espresso 2.1 - lots of missing 'shmem_include.o'

Konstantin Kudin konstantin_kudin at yahoo.com
Tue Nov 9 21:35:02 CET 2004


--- Paolo Giannozzi <giannozz at nest.sns.it> wrote:


> please try the following patch and report if it works now:
> http://web1.sns.it/~giannozz/pw/pw-2-1-1.patch.gz

 The patch works for the most part, but some other object files are
missing. Specifically, "../Modules/path_formats.o" is missing from
"PWNC " and "pwtools". In addition, "../Modules/parallel_include.o" is
missing from "upftools".

 
> > Perhaps, the object files from Modules/* could be packed into a
> > library?
> 
> perhaps, but it has to be tested on many architectures

 On IBM, things seem to proceed almost smoothly if modules are packed
into a library file. There are some inconsistencies found with such an
approach. Specifically, the Makefile in "Modules" has
"path_formats.f90" instead of "path_formats.o". In addition, it also
seems to want to have 
"basic_algebra_routines.o", otherwise, the library linking fails.

 The addition to Modules/Makefile for creating a library is:

all : modules.a
                                                                       
        
modules.a : $(MODULES)
        $(AR) $(ARFLAGS) $@ $?
        $(RANLIB) $@

 Then this "modules.a" needs to be added to make.sys as in:
LIBOBJS        = ../Modules/modules.a ../flib/ptools.a ../flib/flib.a
../clib/clib.a

 Renaming MODULES to MODULES1 in other Makefiles reveals that in a
couple of cases (Gamma,atomic) $(MODULES) include some files from the
PW directory. Moving those *.o's to other variables fixes the issue
such that all the *.x files link properly.

 Moreover, exactly the same thing can be done to PWOBJS files. These
object files are used in many places, so making a library out of them
would clean up the Makefiles. That will improve maintainability.
 
 Kostya


		
__________________________________ 
Do you Yahoo!? 
Check out the new Yahoo! Front Page. 
www.yahoo.com 
 




More information about the users mailing list