Hi all,

Given that many people are actually having problems compiling whatever
version of Siesta after 2.x, I have decided to send a small, ultra-concise,
step-by-step guide to compile siesta as I have done in my desktop and my
laptop. I suppose it will be the case of many people here, so I forward an
email I sent to a colleague some time ago for the compilation of siesta
3.0-rc1. I have just tested the executable with the nanotube 5-0 test on a
dual core desktop and it runs fine. So, I expect thos instructions to work
for most multicore computers.

Steps for compiling Siesta 3.0-rc2

0 - Very very very very very important: *ifort 10.1* *(11, at least until
some time ago, didn't work. It's buggy and it will only waste your time -
and the time of the people of the rest of the list)* and mkl 10.0.1.014.
Again, without this, you'll probably be wasting your time, and everyone else
in the list's as well. Don't forget to set the environment variables with
the appropriate scripts for ifort and mkl. Also, search netlib.org for the
Blacs and Scalapack.

1 - I am using mpich2-1.2.1. If you want to use a newer version, feel free
to do so, but please download mpich2. It's faster to compile, and it's known
to work.

2 - Type tar -zxvf for the mpich tarball and, for configuring: ./configure
F77=ifort FFLAGS=-O2 F90=ifort F90FLAGS=-O2 --enable-f90

3 - Type make install. For installing in the default directories, you will
need root access. If you don't have root access, ask the sysadmin or your
closest Linux guru to install ifort 10, the mkl and mpich with the
instructions given in steps 0-3. If you install in "unconventional
directories" then don't forget to inclued them in your PATH environment
variable, preferably before anything else that was already set.

4 - With mpich compiled, it's time to compile BLACS. There's no need to be
root for that - just use the one I am sending here. Adapt the Bmake.inc
inside the root directory to reflect the installation directories you need:
mpif90, mpi include files and all that jazz, and type make mpi .

5 - Compile scalapack. I am using scalapack 1.7.5. Adapt SLmake.inc as
needed and type make.

6 - Use the arch.make included in this email to compile siesta after having
creating the compilation directory with $SIESTA_HOME/Src/objsetup.sh. Adapt
arch.make to reflect the directories where all the libraries are found. and
type make.

7 - Start the mpd and run siesta in parallel (you might end up not being
able to hold some tears, hopefully out of happiness :D )

Hope this helps. It is also possible to use the Blacs and Scalapack included
with the mkl, but for this you'll have to search the list archives after
November 2009...

Cheers,

Marcos

Attachment: Bmake.inc
Description: Binary data

Attachment: SLmake.inc
Description: Binary data

Attachment: arch.make
Description: Binary data

Responder a