How to build MPI libraries for 64-bit integers

If you want to use 64-bit integers in parallel DIRAC, you also need 64-bit integers in your MPI installation.

64-bit OpenMPI

Please check the integer type of your currently available OpenMPI installation (perhaps it can do 64-bit integers already). For this, type:

ompi_info -a | grep 'Fort integer size'

if the output contains 8 for 64-bit integers

Fort integer size: 8

then you have a suitable 64-bit OpenMPI installation which uses 64-bit (or 8-bytes) integers by default. If the outpus shows 4, you have 32-bit integers.

If you decided that you want to build 64-bit OpenMPI yourself (what is not difficult), then download the latest stable source from and extract it. Then enter the directory and configure OpenMPI (edit prefix path).

For Intel compilers use:

./configure CXX=icpc CC=icc F77=ifort FC=ifort FFLAGS=-i8  FCFLAGS=-i8  CFLAGS=-m64  CXXFLAGS=-m64 --prefix=/path/to/your_openmpi

For GNU compilers type:

./configure  CXX=g++ CC=gcc F77=gfortran FC=gfortran FFLAGS="-m64 -fdefault-integer-8" FCFLAGS="-m64 -fdefault-integer-8" CFLAGS=-m64 CXXFLAGS=-m64 --prefix=/path/to/your_openmpi

Once the configure step is finished (lot of output, at the end there should be no error), build the library:

make -jN
make all install

Finally export the path locations in .bashrc (or in the corresponding file if you don’t use bash-shell):

export PATH=$PATH:'/path/to/your_openmpi/bin'
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:'/path/to/your_openmpi/lib'
export MANPATH=$MANPATH:'/path/to/your_openmpi/share/man'