[Pw_forum] Excess of "Modules" references in the Makefiles

Riccardo Di Meo dimeo at democritos.it
Sun Feb 7 12:01:18 CET 2010


Paolo Giannozzi wrote:
> On Feb 6, 2010, at 17:52 , Riccardo
>
>   
>> I would suggest to turn the Modules objects into a static library (as
>> for the libpw.a library), and link all applications against it instead
>>     
>
> good suggestion, but it was already tried, several years ago, and
> at least one compiler didn't like it. It took several attempts before
> converging to a satisfactory installation mechanism that was
> working on even the most exotic machines.
>   
Mmmh, I understand why this is a problem, however I thought that this 
approach would have been feasible, since the pw.x compilation seems to 
require it anyway (pw.x gets build from libpw.a), so I don't understand 
why the same mechanism shouldn't apply to Modules objects too.

> Maybe it is no longer a problem: a lot of hardware that used to be
> important in scientific computing (dec alpha, cray, sgi, hp, ...)
> either no longer exists or it has  moved to "standard", so to speak,
> hardware and software. So, it is worth to try again, but it has to be
> tried for:
> - ifort
> - pgi
> - gfortran
> - g95
> - xlf (including bluegene machines)
> - ftn (cray)
> - nec sx* machines
> - sun machines
> - any more important case I have forgotten.
>
> P.
>   

I'd like to contribute on that, however I don't have a way to put my 
hand on at least 1/3 of the architectures/compilers you mentioned (some 
of them in fact I have never heard of: I admit I'm quite impressed :-) ).

As an "academical" discussion, is there a point to provide 
_installation_ support for such a large number of architectures?

Notwithstanding that it _is_ admirable to do so, and that it would ease 
the installation on more exotic (and probably powerful) machines, I 
think that local administrators and users should be able to fix the 
minor incompatibilities themselves (moreover because if a code can't 
link to a static library in a set architecture, the local 
users/administrator probably encountered the issue many times and know 
already how to break the .a file into objects or to change the makefile 
and fix the installation).

As for my personal point of view, I think that a software like QE should 
strive as much as possible to keep source code compatibility (e.g. not 
introduce GCCisms, Ifortism and so on), but leave the 
installation/compilation minor issues to the administrators, on the 
ground that it spares them only some little "nuisances" but is a 
maintenance nightmare for you.... Just my personal opionion anyway.

Cheers (and thanks for the attention)
Riccardo








More information about the users mailing list