Re: [AMBER] MPI Compilation problems Amber 12 on CentOS 6.2

From: Frank Thommen <structures-it.embl-heidelberg.de>
Date: Thu, 13 Jun 2013 14:03:03 +0200

On 13.06.13 13:47, David A Case wrote:
> On Thu, Jun 13, 2013, Frank Thommen wrote:
>
>> In file included from select_atoms.c:5:
>> /usr/include/string.h:548: error: expected declaration specifiers or
>> '...' before '__locale_t'
>
> Pretty odd...your compiler doesn't like <string.h>.
>
> What does "mpicc -show" report? How about "gcc --version".

amber-12 > gcc --version
gcc (GCC) 4.4.4
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

amber-12 > mpicc -show
/g/software/linux/pack/gcc-4.4/bin/gcc
-L/opt/platform_mpi/lib/linux_amd64 -lpcmpio -lpcmpi -ldl
-I/opt/platform_mpi/include
amber-12 > which mpicc
/opt/platform_mpi/bin/mpicc
amber-12 > which gcc
/g/software/linux/pack/gcc-4.4/bin/gcc
amber-12 >


I should probably also have told (sorry for the omission), that I built
the serial binaries under CentOS 5.9 and the gcc I'm using
(/g/software/linux/pack/gcc-4.4/bin/gcc) has also been built under
CentOS 5.x.

When trying to build the serial (!) Amber[Tools]12 binaries on the
cluster (CentOS 6.2), I get even other compilation errors:

[...]
make[5]: Entering directory
`/g/software/linux/pack/amber-12/SRC/amber12/AmberTools/src/mtkpp/src/Diagnostics'
/bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I.
-I../..
-I/g/software/linux/pack/amber-12/SRC/amber12/AmberTools/src/boost-1.38.0
-I./.. -DNDEBUG -DUSE_TINYXML -DTIXML_USE_STL -DC99_OK -O2 -fPIC
-DHAVE_ZLIB -MT MTKException.lo -MD -MP -MF .deps/MTKException.Tpo -c -o
MTKException.lo MTKException.cpp
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../..
-I/g/software/linux/pack/amber-12/SRC/amber12/AmberTools/src/boost-1.38.0 -I./..
-DNDEBUG -DUSE_TINYXML -DTIXML_USE_STL -DC99_OK -O2 -fPIC -DHAVE_ZLIB
-MT MTKException.lo -MD -MP -MF .deps/MTKException.Tpo -c
MTKException.cpp -o MTKException.o
In file included from
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/bits/localefwd.h:42,
                  from
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/string:45,
                  from MTKException.h:11,
                  from MTKException.cpp:8:
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/x86_64-unknown-linux-gnu/bits/c++locale.h:52:
error: 'uselocale' was not declared in this scope
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/x86_64-unknown-linux-gnu/bits/c++locale.h:52:
error: invalid type in declaration before ';' token
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/x86_64-unknown-linux-gnu/bits/c++locale.h:
In function 'int std::__convert_from_v(__locale_struct* const&, char*,
int, const char*, ...)':
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/x86_64-unknown-linux-gnu/bits/c++locale.h:72:
error: '__gnu_cxx::__uselocale' cannot be used as a function
/g/software/linux/pack/gcc-4.4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.4/../../../../include/c++/4.4.4/x86_64-unknown-linux-gnu/bits/c++locale.h:97:
error: '__gnu_cxx::__uselocale' cannot be used as a function
make[5]: *** [MTKException.lo] Error 1
[...]


I'll try to completely rebuild with the default gcc on the cluster.
Unfortunately I'll then probably loose compatibility with CentOS 5.x,
which is still the most used version in our unit.


>> This is on CentOS 6.2 (kernel 2.6.32-220.el6.x86_64) on an LSF 7.0.6
>> cluster using the MPI implementation which comes with LSF.
>
> By far the safest way to build parallel Amber is to also build your own
> MPI. That way, you know the options are correct, and that the same compiler
> is used for MPI as for Amber. The "implementation that comes with LSF" could
> have all kinds of weird behavior (and apparently does).

I'm not sure this is an option for us, as we are required to use an MPI
build which is integrated into the LSF batch system, so that it can
handle those jobs correctly. I'm not sure I want - better: I'm sure I
don't want :-) - to go through the hassles of integrating our own MPI
build into the cluster setup.

Cheers
frank


>
> Go to $AMBERHOME/AmberTools/src and run "./configure_mpich --help". You
> download the mpich code, re-run this script telling which compiler you want,
> and it will generate an MPI installation that should be compatible and have
> all the correct features enabled.
>
> ...good luck...dac
>
>
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>


-- 
Frank Thommen - Structures IT Management and Support - EMBL Heidelberg
structures-it.embl-heidelberg.de - +49 6221 387 8353
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Jun 13 2013 - 05:30:02 PDT
Custom Search