Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] Compiling abinip using mpich on Suse10.1

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] Compiling abinip using mpich on Suse10.1


Chronological Thread 
  • From: James Johns <jej7x@xenon.cchem.berkeley.edu>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] Compiling abinip using mpich on Suse10.1
  • Date: Thu, 19 Feb 2009 12:38:11 -0800 (PST)

Thanks again Alain. Ok, so I copmiled gcc, g++ gfortran all version 4.3, and then rebuilt openmpi. The ./configure script worked fine, but then make failed again and again, regardless of the compiler flags I passed it. I did succesfully compile the 5.6.5 parallel version, but to do that I had to compile openmpi using mixed compiler suites: gcc, g++, and ifort. Obviously, this is not the most desireable situation and to be honest i'm shocked that openmpi even compiled. This time while running ./configure with the usual flags and FC=ifort, it compiled and I didn't see any bugs in make, but it did fail during "make install" while making the test directories. I'm currently running a test calculation for a 7 atom thick Ag slab optimizing the unit cell size, kpt grid, tsmear etc, and comparing it previously run serial calculations from version 5.4. Is there any thing in particular I should be on the look out for, and do you have any final ideas why I wouldn't have been able to build abinit using gfortran 4.3.3 and openmpi?
James

On Tue, 17 Feb 2009, Alain Jacques wrote:

Hello James,

Glad to know that you're going in the right direction.

Excerpt from the
http://www.abinit.org/Infos_v5.6/known_problems/KNOWN_PROBLEMS file ...
a recommended reading :-)

"Versions of compilers known to be too buggy for ABINIT
gfortran 4.1.2 (=> use gfortran 4.2 or 4.3 instead)
intel10.0 (=> use intel9.1 or 10.1 instead)"

So I am afraid your gcc/gfortran is outdated.
You have two solutions:

* you earlier mentioned that you have an Intel ifort installed ... I use
recent subversions of 10.1 (supported) and 11.0 (no apparent problem).
OpenMPI compiles nicely with Intel ifort/icc - setup your environment
and configure openMPI with --enable-shared --enable-static CC=icc
F77=ifort FC=ifort CXX=icpc options (use --prefix=... to install it in a
nice place)

* or compile a new gcc/gfortran toolchain with your built in gcc-4.1.2
- easy as pie. Download gcc-4.3.2 or gcc-4.3.3 from http://gcc.gnu.org/,
- read the installation doc! -, configure with --enable-bootstrap
--enable-shared --enable-threads=posix --enable-checking=release
--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions
--enable-languages=c,c++,fortran --with-cpu=generic
--build=x86_64-suse-linux options (and use --prefix=)
recompile openmpi for this new gcc/gfortran toolchain ... similar recipe.

Don't forget to export the right PATH and LD_LIBRARY_PATH to the right
compilers execs and libraries (check 32/64bit paths) in order to have
the new tools invoked before the default gcc/gfortran/mpi stuff.
Reconfigure abinit to reflect the new toolchain - examples available in
http://www.etsf.be/downloads/ETSF_softlib/page2/page2.html. Build abinit
with a plain "make" - "make multi" only tries a parallel build for
speed, doesn't work any better.

The "conftest.c:16:28: error: ac_nonexistent.h: No such file or
directory" are benign. Your module problem is probably a compiler bug -
you may try to workaround it by specifying an include path (beurk!).


Kind regards,

Alain


James Johns wrote:
Thanks for the help Alain, i took your advice and installed openmpi
into /opt/openmpi and exported the paths as you said. I then compiled
the simple hello world program below using mpifortran and ran the
a.out using "mpirun a.out" and it worked just fine. I then switched
to my abinit directory to try configure --enable-mpi
--with-mpi-prefix=/opt/openmpi. I thought the configuration script
ran fine, and tried make multi and make multi_alt, but I kept getting
this error.

...




Archive powered by MHonArc 2.6.15.

Top of Page