## page was renamed from Building a Cluster - Tutorial/test dl160
.. _32H2O.xyz: attachment:32H2O.xyz
This page describes the necessary steps to build RPM software packages on the login nodes **fjorm** or **thul**.
**Warning**: campos-dacapo-python_ provides a python interface to campos-dacapo_ Fortran code,
through campos-ase2_.
On a 64-bit machine campos-ase2_ works only with python <= 2.4, due to the unmaintained python-numeric_ package.
Users on modern systems can use instead the campos-ase3_ package and skip installation of any packages related to campos-ase2_.
**Warning**: on 64-bit machines el5 installs often only 32-bit versions of packages.
Please verify that 64-bit versions are installed, otherwise run the corresponding `yum install package` again.
.. Contents::
Configure external repositories
===============================
As root:
- create yum repository definitions (do **not** enable them)::
# atrpms
echo '[atrpms]' > /etc/yum.repos.d/atrpms.repo
echo 'name=CentOS $releasever - $basearch - ATrpms' >> /etc/yum.repos.d/atrpms.repo
echo 'baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable' >> /etc/yum.repos.d/atrpms.repo
echo '#baseurl=http://mirrors.ircam.fr/pub/atrpms/el$releasever-$basearch/atrpms/stable' >> /etc/yum.repos.d/atrpms.repo
echo 'gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms' >> /etc/yum.repos.d/atrpms.repo
echo 'gpgcheck=1' >> /etc/yum.repos.d/atrpms.repo
echo 'enabled=0' >> /etc/yum.repos.d/atrpms.repo
# epel
echo '[epel]' > /etc/yum.repos.d/epel.repo
echo 'name=CentOS $releasever - $basearch - EPEL' >> /etc/yum.repos.d/epel.repo
echo 'baseurl=http://download.fedora.redhat.com/pub/epel/$releasever/$basearch' >> /etc/yum.repos.d/epel.repo
echo 'gpgkey=http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL' >> /etc/yum.repos.d/epel.repo
echo 'gpgcheck=1' >> /etc/yum.repos.d/epel.repo
echo 'enabled=0' >> /etc/yum.repos.d/epel.repo
- install, as root::
yum install yum-utils wget
# /var directories must be created
yum search --enablerepo=atrpms arpack-devel
yum search --enablerepo=epel jmol
Configure rpmbuild
==================
- create and retrieve the `rpmbuild` project (as **rpmbuild** user)::
cd
svn co https://svn.fysik.dtu.dk/projects/rpmbuild/trunk rpmbuild
- include the rpmbuild environment configuration script in `~/.bashrc`:
- copy the script::
cp ~/rpmbuild/SOURCES/.bashrc_rpmbuild ~/
- and add the following to `~/.bashrc`::
if [ -r "${HOME}/.bashrc_rpmbuild" ]; then
. ${HOME}/.bashrc_rpmbuild
fi
**Note** on Niflheim the variables::
export FYS_PLATFORM=Intel-Nehalem-el5 # thul
export FYS_PLATFORM=AMD-Opteron-el5 # fjorm
will be set automatically by `/home/camp/modulefiles.sh`
if the `environment-modules` package is installed.
- create temporary directory::
mkdir -p /scratch/$USER
- apply settings from `~/.bashrc` by::
. ~/.bashrc
- use the following ~rpmbuild/.rpmmacros::
cp ~/rpmbuild/SOURCES/.rpmmacros ~/
- create directories::
mkdir -p ~/${FYS_PLATFORM}/{RPMS,SRPMS,BUILD}
mkdir -p ~/${FYS_PLATFORM}/{SPECS,SOURCES} # needed only by openmpi
Install external packages
=========================
- download official packages, as rpmbuild::
cd ~/${FYS_PLATFORM}/RPMS
mkdir external; cd external
# packages from other distributions
yumdownloader --resolve texlive-latex emacs-auctex tex-preview
# el5 packages
yumdownloader --resolve emacs binutils-devel glib-devel libstdc++-devel
yumdownloader --resolve gcc-gfortran blas-devel lapack-devel python-devel
yumdownloader --resolve gnuplot libXi-devel xorg-x11-fonts-100dpi pexpect tetex-latex tkinter qt-devel
yumdownloader --resolve openmpi openmpi-devel openmpi-libs compat-dapl libibverbs librdmacm openib
yumdownloader --resolve pygtk2-devel gtk2-devel tk-devel agg ghostscript libtiff-devel xterm
yumdownloader --resolve libX11-devel libXext-devel openmotif openmotif-devel gd-devel libXpm-devel
yumdownloader --resolve gcc43-c++ gcc43-gfortran
yum localinstall * # as root
- download `atrpms` packages, as rpmbuild (``vtk-python`` is currently unavailable 16 Apr 2009)::
cd ~/${FYS_PLATFORM}/RPMS/external
yumdownloader --resolve --enablerepo=atrpms vtk-python arpack-devel graphviz
wget http://ATrpms.net/RPM-GPG-KEY.atrpms
rpm --import RPM-GPG-KEY.atrpms # as root
yum localinstall * # as root
- download the packages from `epel`, as rpmbuild::
~/${FYS_PLATFORM}/RPMS/external
yumdownloader --resolve --enablerepo=epel jmol gsl-devel python-lxml
yumdownloader --resolve --enablerepo=epel environment-modules suitesparse-devel
wget http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL
rpm --import RPM-GPG-KEY-EPEL # as root
yum localinstall * # as root
- on Niflheim **only**: remove default openmpi::
yum remove openmpi openmpi-libs
- edit ``/etc/yum.conf`` so it contains::
exclude=netcdf-* netcdf3-* fftw-* fftw2-* fftw3-* python-numeric openmpi-* libgfortran4* gcc4* libstdc++4* libgomp-*
It's time to build custom RPMS
==============================
compilers and tools
-------------------
open64
++++++
Install (on the login and computes nodes) `Install Open64 Compiler Suite `_ RPM, and deploy module file under ` ~rpmbuild/modulefiles/${FYS_PLATFORM}/open64`.
Install using **--relocate** option::
rpm -ivh --relocate "/opt/open64"="/opt/open64/4.2.1" open64-4.2.1-0.x86_64.rpm
The module file is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk.
**Note**: the module file should contain at least::
prepend-path PATH /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1
prepend-path PATH /opt/open64/4.2.1/bin
prepend-path LD_LIBRARY_PATH /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1
g95
+++
Install (on the login and computes nodes) `g95 `_ RPM, and deploy module file under ` ~rpmbuild/modulefiles/${FYS_PLATFORM}/g95`.
Install using **--relocate** option::
rpm -ivh --relocate "/usr/local"="/opt/g95/0.91" g95-0.91-4.x86_64.rpm
The module file is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk.
**Note**: the module file should contain at least (do **not** add the lib directory to LD_LIBRARY_PATH)::
prepend-path PATH /opt/g95/0.91/lib/gcc-lib/x86_64-unknown-linux-gnu/4.0.3
prepend-path PATH /opt/g95/0.91/bin
intel
+++++
Install icc/ifort compilers (only on the login nodes, packages available under `/home/data/Intel` with restricted access), install (using ``rpm -ivh``) only the following packages from `l_cproc_p_11.1.046_intel64`::
intel-cproc046-11.1-1.x86_64.rpm
intel-cproidb046-11.1-1.x86_64.rpm
intel-cprolib046-11.1-1.x86_64.rpm
intel-cprolibdev046-11.1-1.x86_64.rpm
intel-cprotbblib046-11.1-1.noarch.rpm
intel-cprotbblibdev046-11.1-1.noarch.rpm
intel-cprocsdk046-11.1-1.noarch.rpm
intel-cproidbsdk046-11.1-1.noarch.rpm
and from `l_cprof_p_11.1.046_intel64`::
intel-cprof046-11.1-1.x86_64.rpm
intel-cproflib046-11.1-1.x86_64.rpm
intel-cprofsdk046-11.1-1.noarch.rpm
, enable them (only on **thul**)::
. /opt/intel/Compiler/11.1/046/bin/intel64/ifortvars_intel64.sh
. /opt/intel/Compiler/11.1/046/bin/intel64/iccvars_intel64.sh
Build intel compatibility packages (only on **thul**)::
cd ~/rpmbuild/SPECS
rpmbuild -bb ${modules_usage} intel-redist.spec
**Note**: do not install the RPMS generated in the last step on the login node. They need to be installed **only** on compute nodes.
On the login node only the module file needs to be deployed under `~rpmbuild/modulefiles`, as rpmbuild.
Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk.
Here is what need to be done for a new version of the package::
mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort
cp /scratch/rpmbuild/intel-11.1.046/11.1.046-1.intel64.${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort
cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort
ln -s 11.1.046-1.intel64.${disttag} 11.1-1
**Note**: the above module file should contain at least::
prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/11.1/046/lib/intel64
prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/11.1/046/idb/lib/intel64
prepend-path PATH /opt/intel/Compiler/11.1/046/bin/intel64
prepend-path MANPATH :
prepend-path MANPATH /opt/intel/Compiler/11.1/046/man
**Note**: intel changes packaging quite often, here are the installation instructions for the **10.1.015** compilers:
- install RPMS (on the login and computes nodes) found in `l_cc_p_10.1.015_intel64.tar.gz` and `l_fc_p_10.1.015_intel64.tar.gz` manually (using ``rpm -ivh``)::
intel-icce101015-10.1.015-1.em64t.rpm
intel-iidbe101015-10.1.015-1.em64t.rpm
intel-isubhe101015-10.1.015-1.em64t.rpm
intel-iforte101015-10.1.015-1.em64t.rpm
- replace the installation path in the scripts (action necessary only on the login node)::
files=`grep "" -r /opt/intel/cce/ | cut -d":" -f 1 | uniq`
for file in $files;
do
echo $file
sed -i 's##/opt/intel/cce/10.1.015#g' $file
done
files=`grep "" -r /opt/intel/fce/ | cut -d":" -f 1 | uniq`
for file in $files;
do
echo $file
sed -i 's##/opt/intel/fce/10.1.015#g' $file
done
files=`grep "" -r /opt/intel/idbe/ | cut -d":" -f 1 | uniq`
for file in $files;
do
echo $file
sed -i 's##/opt/intel/idbe/10.1.015#g' $file
done
- provide the module file `~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort/10.1.015-1.intel64.${disttag}`::
prepend-path LD_LIBRARY_PATH /opt/intel/cce/10.1.015/lib
prepend-path LD_LIBRARY_PATH /opt/intel/fce/10.1.015/lib
prepend-path PATH /opt/intel/cce/10.1.015/bin
prepend-path PATH /opt/intel/fce/10.1.015/bin
prepend-path PATH /opt/intel/idbe/10.1.015/bin
prepend-path MANPATH :
prepend-path MANPATH /opt/intel/cce/10.1.015/man
prepend-path MANPATH /opt/intel/fce/10.1.015/man
prepend-path MANPATH /opt/intel/idbe/10.1.015/man
and the link::
cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort
ln -s 10.1.015-1.intel64.${disttag} 10.1-1
intel mkl
+++++++++
Install mkl, and build mkl compatibility package (only on **thul**)::
cd ~/rpmbuild/SOURCES
export mkl=10.1.3.027
mkdir ${mkl}
cp -rp /opt/intel/mkl/${mkl}/lib ${mkl}
cp -rp /opt/intel/mkl/${mkl}/doc ${mkl}
tar zcf intel-redist-mkl-${mkl}.tar.gz ${mkl}
cd ~/rpmbuild/SPECS
rpmbuild -bb --with version1=1 --with version2=3 --with version3=027 ${modules_usage} intel-redist-mkl.spec
**Note**: do not install the resulting RPM on the login node. It needs to be installed **only** on compute nodes.
On the login node only the module file needs to be deployed under `~rpmbuild/modulefiles`, as rpmbuild.
Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk.
Here is what need to be done for a new version of the package::
mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl
cp /tmp/intel-mkl-${mkl}/${mkl}-1.${disttag}.em64t ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl
cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl
ln -s ${mkl}-1.${disttag}.em64t 10.1p-027
**Note**: the above module file should contain at least::
prepend-path LD_LIBRARY_PATH /opt/intel/mkl/10.1.3.027/lib/em64t
**Moreover**: `intel-*intel64*` RPMS need to be installed with *--nodeps*, so move them into a special directory::
mkdir -p ~/${FYS_PLATFORM}/RPMS/nodeps
mv ~/${FYS_PLATFORM}/RPMS/intel-*intel64* ~/${FYS_PLATFORM}/RPMS/nodeps
Build mkl/fftw (as root)::
export mkl=10.1.3.027
. /opt/intel/Compiler/11.0/083/bin/intel64/ifortvars_intel64.sh
cd /opt/intel/mkl/${mkl}/interfaces/fftw2xf
make libem64t
cd /opt/intel/mkl/${mkl}/lib/em64t
ln -s libfftw2xf_intel.a libfftw.a
Logout and login as **rpmbuild**.
openmpi
-------
Build a custom openmpi, using torque support::
wget http://www.open-mpi.org/software/ompi/v1.3/downloads/openmpi-1.3.3.tar.bz2 \
-O ~/rpmbuild/SOURCES/openmpi-1.3.3.tar.bz2
sh ./buildrpm-1.3.3-1.gfortran.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.gfortran.sh.log.${FYS_PLATFORM}
sh ./buildrpm-1.3.3-1.gfortran43.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.gfortran43.sh.log.${FYS_PLATFORM}
sh ./buildrpm-1.3.3-1.pathscale.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.pathscale.sh.log.${FYS_PLATFORM}
sh ./buildrpm-1.3.3-1.ifort.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.ifort.sh.log.${FYS_PLATFORM} # thul only
module load g95
sh ./buildrpm-1.3.3-1.g95.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.g95.sh.log.${FYS_PLATFORM} # fjorm only
module unload g95
module load open64 # 24 June 2009: build fails on Nehalem with *configure: error: TM support requested but not found. Aborting*
sh ./buildrpm-1.3.3-1.open64.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.open64.sh.log.${FYS_PLATFORM}
module unload open64
**Note**: intel openmpi needs to be installed ignoring dependencies::
rpm -ivh --nodeps --oldpackage ~rpmbuild/${FYS_PLATFORM}/RPMS/openmpi-1.3.3-1.${disttag}.ifort.11.1.x86_64.rpm
If scripts that contain **ALL** build/install/uninstall commands (``global_install.sh`` and ``global_uninstall.sh``) need to be created,
every time after an RPM is successfully built, do::
grep -v "#\!" install.sh >> ~/${FYS_PLATFORM}/global_install.sh
cat uninstall.sh ~/${FYS_PLATFORM}/global_uninstall.sh | grep -v "#\!" >> ~/${FYS_PLATFORM}/global_uninstall.sh.tmp && mv -f ~/${FYS_PLATFORM}/global_uninstall.sh.tmp ~/${FYS_PLATFORM}/global_uninstall.sh
# ignore "cat: .../global_uninstall.sh: No such ..." error when running first time
**Note** that `global_uninstall.sh` won't remove built RPM files, just will uninstall the packages.
acml
----
`AMD Core Math Library `_ contains optimized BLAS and LAPACK libraries
for AMD opteron processors (work also on intel), and is available for download after registration.
Build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.blas.acml.4.0.1.sh
#
. fys.set.Niflheim.pathscale.3.2.sh
. fys.set.blas.acml.4.0.1.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.blas.acml.4.3.0.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.blas.acml.4.3.0_mp.sh
#
. fys.set.Niflheim.open64.4.2.1.sh
. fys.set.blas.acml.4.3.0.sh
**Note** problems with `dgemm `_ acml 4.1.0 and 4.2.0 have been reported.
Moreover campos-dacapo_ built with **acml-4-1-0-pathscale-64bit.tgz** fails with "ZINSC 2 returned info= 2"
for the following job::
#!/usr/bin/env python
from Dacapo import Calculator
from ASE.IO.xyz import ReadXYZ
from ASE.Dynamics.Langevin import Langevin
prefix = 'D'
atoms = ReadXYZ('32H2O.xyz')
L = 9.8553729
atoms.SetUnitCell([L, L, L], fix=True)
atoms.SetBoundaryConditions(True)
r = 1
atoms = atoms.Repeat([r, r, r])
n = 48 * r
calc = Calculator(nbands=128 * r**3, planewavecutoff=350,
densitycutoff=500, xc='PBE')
atoms.SetCalculator(calc)
from time import time
atoms.GetPotentialEnergy()
pos=atoms[0].GetCartesianPosition()
atoms[0].SetCartesianPosition(pos+0.005)
t0=time()
atoms.GetPotentialEnergy()
print time()-t0
Download 32H2O.xyz_
goto
----
`GotoBLAS `_ contains optimized BLAS libraries,
and is available for academic community after registration. Does not work in Intel Nehalem.
Download **GotoBLAS-1.26.tar.gz** to ~/rpmbuild/SOURCES.
The default build process searches your $PATH for available compilers.
Priority order is PathScale, PGI, Intel, gfortran, g95 and g77,
therefore setting compilers explicitly is needed.
Build RPMS (on the **target** compute node!) using the following command::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.build.goto.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.build.goto.sh
#
. fys.set.Niflheim.pathscale.3.2.sh
. fys.build.goto.sh
#
. fys.set.Niflheim.open64.4.2.1.sh
. fys.build.goto.sh
**Note** - **1.26** version fails on Nehalem with::
../../../param.h:1195:21: error: division by zero in #if
atlas
-----
Build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.build.atlas.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.build.atlas.sh
**Note**: - **3.8.3** version fails on Opteron with open64 with::
/scratch/rpmbuild/ATLAS/RpmObjs/..//CONFIG/src/backend/comptestC.c:5: undefined reference to `__pathscale_malloc_alg'
rasmol
------
**Required by campos-ase2**.
**Note** that rasmol is built for 32bit architecture, so make sure that your system fulfills "BuildRequires" for both 64 and 32bit::
rpmbuild --nobuild RasMol.spec
Build the following RPMS::
. fys.build.RasMol.2.7.3.sh
cblas
-----
**Required by campos-ase2**.
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.blas.default.sh
. fys.build.cblas.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.blas.acml.4.0.1.sh
. fys.build.cblas.sh
python-setuptools
-----------------
Build the following RPMS::
. fys.build.setuptools.0.6c9.sh
If using modules::
module load python-setuptools
else::
. /etc/profile.d/python-setuptools.sh
python-nose
-----------
Build the following RPMS::
. fys.build.nose.0.10.4.sh
If using modules::
module load python-nose
else::
. /etc/profile.d/python-nose.sh
numpy
-----
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.Niflheim.cblas.2.23.3.sh
. fys.build.numpy.1.3.0.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.acml.4.0.1.cblas.none.sh
. fys.build.numpy.1.3.0.sh
# only on thul
. fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.mkl.10.1.3.027.cblas.mkl.10.1.3.027.sh
. fys.build.numpy.1.3.0.sh
# building using cblas/acml causes the test below to fail
. fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh
. fys.build.numpy.1.3.0.sh
After installing python-numeric make a very rough check:
- is using modules::
module load ${blas}-${compiler}64/${blas_version}-1.${disttag}
module load cblas-${blas}-${compiler}64/2.23.3-1.${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version}
module load numpy/1.3.0-1.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
python -c "import numpy; from numpy.core.multiarray import dot; b = numpy.ones(13, numpy.complex); dot(b, b)"
python -c "import numpy; numpy.test()"
gnuplot-py
----------
**Required by campos-ase2**.
Build the following RPMS::
. fys.build.gnuplot-py.1.8.sh
If using modules::
module load gnuplot-py
else::
. /etc/profile.d/gnuplot-py.sh
python-numeric
--------------
**Required by campos-ase2**.
**Warning**: on a 64-bit machine works only with python <= 2.4.
We must install **24.2** version, and we keep the default version::
cd ~/${FYS_PLATFORM}/RPMS/external
rpm -e --nodeps python-numeric # as root
yumdownloader --resolve --disableexcludes=main python-numeric
cd ~/rpmbuild/SPECS
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.Niflheim.cblas.2.23.3.sh
. fys.build.Numeric.24.2.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.Numeric.24.2.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh
. fys.build.Numeric.24.2.sh
**Note**: (16 Apr 2009) currently Numeric's `test.py` results in (we ignore this error)::
glibc detected *** python: free(): invalid next size (normal): 0x09aee970 ***
After installing python-numeric make a very rough check:
- is using modules::
module load ${blas}-${compiler}64/${blas_version}-1.${disttag}
module load cblas-${blas}-${compiler}64/2.23.3-1.${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version}
module load python-numeric/24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
python -c "import lapack_lite"
ldd `rpm -ql python-numeric-24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep lapack_lite.so`
ldd `rpm -ql python-numeric-24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep _dotblas.so`
- else::
. /etc/profile.d/python-numeric.sh
python -c "import lapack_lite"
ldd `rpm -ql python-numeric | grep lapack_lite.so`
ldd `rpm -ql python-numeric | grep _dotblas.so`
and reinstall the default version::
rpm -ivh --oldpackage ~/${FYS_PLATFORM}/RPMS/external/python-numeric-23.*.rpm
netcdf
------
`NetCDF `_ (*network Common Data Form*) is an interface for array-oriented
data access and a library that provides an implementation of the interface. The *NetCDF* library also defines a
machine-independent format for representing scientific data.
We prefer version `3.6.1 `_
or higher (note that version `3.6.2` has fortran interface in libnetcdff.a).
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.build.netcdf4.4.0.1.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.build.netcdf4.4.0.1.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.build.netcdf4.4.0.1.sh
# only on fjorm
. fys.set.Niflheim.pathscale.3.2.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.build.netcdf4.4.0.1.sh
# only on thul
. fys.set.Niflheim.ifort.11.0.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.build.netcdf4.4.0.1.sh
# only on fjorm
. fys.set.Niflheim.open64.4.2.1.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.build.netcdf4.4.0.1.sh
ScientificPython 2.6.2
----------------------
**Warning**: version 2.6.2 required by `campos-ase2`_. Later versions are needed by `campos-ase3`_.
On a custom system build the following RPMS::
. fys.set.ScientificPython.2.6.2.default.sh
. fys.build.ScientificPython.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.ScientificPython.2.6.2.gfortran.4.1.2.openmpi.1.3.3.numeric.sh
. fys.build.ScientificPython.sh
ScientificPython 2.8 or later
-----------------------------
Required by `campos-ase3`_.
On a custom system build the following RPMS::
. fys.set.ScientificPython.2.8.default.sh
. fys.build.ScientificPython.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.ScientificPython.2.8.gfortran.4.1.2.serial_version.only.numpy.sh
. fys.build.ScientificPython.sh
python-docutils
---------------
Build the following RPMS::
. fys.build.docutils.0.5.sh
If using modules::
module load python-docutils
else::
. /etc/profile.d/python-docutils.sh
pytz
----
Build the following RPMS::
. fys.build.pytz.2008g.sh
If using modules::
module load pytz
else::
. /etc/profile.d/pytz.sh
python-dateutil
---------------
Build the following RPMS::
. fys.build.python-dateutil.1.4.1.sh
If using modules::
module load python-dateutil
else::
. /etc/profile.d/python-dateutil.sh
python-matplotlib
-----------------
On a custom system build the following RPMS::
. fys.build.python-matplotlib.0.99.1.2.sh
campos-ase2
-----------
Build the following RPMS::
. fys.build.ase2.2.3.13.sh
fftw2
-----
We use version `2.1.5 `_.
On a custom system build the following RPMS::
. fys.set.fftw2.default.sh
. fys.build.fftw2.2.1.5.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.build.fftw2.2.1.5.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.build.fftw2.2.1.5.sh
#
. fys.set.Niflheim.pathscale.3.2.sh
. fys.build.fftw2.2.1.5.sh
# only on fjorm
. fys.set.Niflheim.open64.4.2.1.sh
. fys.build.fftw2.2.1.5.sh
# Note: 24 June 2009: ifort fails to build static fftw2
. fys.set.Niflheim.ifort.11.0.sh
. fys.build.fftw2.2.1.5.sh
campos-dacapo-pseudopotentials
------------------------------
.. _campos-dacapo-pseudopotentials-1.tar.gz: attachment:campos-dacapo-pseudopotentials-1.tar.gz
campos-dacapo-pseudopotentials-1.tar.gz_
Build the following RPMS::
. fys.build.dacapo-pseudopotentials.1.sh
campos-dacapo-python
--------------------
**Requires campos-ase2**.
Build the following RPMS::
. fys.build.dacapo-python.0.9.4.sh
campos-dacapo
-------------
Note that FC's fftw version 3 is incompatible with `dacapo`.
If you build only a serial version add "--without parallel" to the rpmbuild options.
Another useful option is "--without default_version" that does not put `/etc/profile.d` scripts,
nor modules under `/opt/modulefiles` that allows the package to be relocatable.
**Warning**: currently (9 Oct 2008) packaging of openmpi on FC8/FC9 requires the following link to be made::
ln -s /usr/include/openmpi/1.2.4-gcc/32/mpif-config.h /usr/include/openmpi/1.2.4-gcc/mpif-config.h
**Warning**: currently (9 Oct 2008) the default build fails for EL4 due to double underlined symbols in the netcdf from `ATrpms`,
however custom build (i.e. with building your own netcdf should work).
On a custom system build the following RPMS::
. fys.set.dacapo.default.sh
. fys.set.atlas.default.sh
. fys.build.dacapo.sh
# optional build using netlib blas/lapack
. fys.set.dacapo.default.sh
. fys.build.dacapo.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.dacapo.2.7.16.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw2.sh
. fys.build.dacapo.sh
# only on fjorm
. fys.set.Niflheim.dacapo.2.7.16.open64.4.2.1.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw2.sh
. fys.build.dacapo.sh
# only on thul
. fys.set.Niflheim.dacapo.2.7.16.gfortran43.4.3.2.openmpi.1.3.3.mkl.10.1.3.027.mkl.10.1.3.027.mkl.sh
. fys.build.dacapo.sh
# optional
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.Nilfheim.openmpi.1.3.3.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.set.Niflheim.fftw2.2.1.5.sh
. fys.set.blas.default.sh
. fys.set.lapack.acml.sh
. fys.build.dacapo.sh
# optional
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Nilfheim.openmpi.1.3.3.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.set.Niflheim.fftw2.2.1.5.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.goto.1.26.sh
. fys.set.lapack.acml.sh
. fys.build.dacapo.sh
# optional
. fys.set.Niflheim.open64.4.2.1.sh
. fys.set.Nilfheim.openmpi.1.3.3.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.set.Niflheim.fftw2.2.1.5.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.goto.1.26.sh
. fys.set.lapack.acml.sh
. fys.build.dacapo.sh
# optional # only on thul # multinode jobs fail
. fys.set.Niflheim.ifort.11.0.sh
. fys.set.Nilfheim.openmpi.1.3.3.sh
. fys.set.Niflheim.netcdf4.4.0.1.sh
. fys.set.Niflheim.mkl.10.1.3.027.sh
. fys.build.dacapo.sh
fftw3
-----
On a custom system build the following RPMS::
. fys.set.fftw3.default.sh
. fys.build.fftw3.3.2.1.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.build.fftw3.3.2.1.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.build.fftw3.3.2.1.sh
- scipy
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.fftw3.default.sh
. fys.set.Niflheim.cblas.2.23.3.sh
. fys.build.scipy.0.7.0.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.scipy.0.7.0.gfortran.4.1.2.blas.lapack.cblas.2.23.3.sh
. fys.build.scipy.0.7.0.sh
# optional - not tested!
. fys.set.Niflheim.scipy.0.7.0.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh
. fys.build.scipy.0.7.0.sh
povray
------
Build the following RPMS::
. fys.build.povray.sh
babel
-----
Build the following RPMS::
. fys.build.Babel.0.9.4.sh
If using modules::
module load babel
else::
. /etc/profile.d/babel.sh
python-jinja2
-------------
Build the following RPMS::
. fys.build.Jinja2.2.1.1.sh
If using modules::
module load python-jinja2
else::
. /etc/profile.d/python-jinja2.sh
python-pygments
---------------
Build the following RPMS::
. fys.build.Pygments.1.0.sh
If using modules::
module load python-pygments
else::
. /etc/profile.d/python-pygments.sh
python-sphinx
-------------
Build the following RPMS::
. fys.build.Sphinx.0.6.1.sh
If using modules::
module load python-sphinx
else::
. /etc/profile.d/python-sphinx.sh
auctex
------
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://ftp.gnu.org/pub/gnu/auctex/auctex-11.85.tar.gz
cd ~/rpmbuild/SPECS
rpmbuild -bb auctex.spec
campos-ase3
-----------
Build the following RPMS::
. fys.build.ase3.3.1.1390.sh
Snapshot package is built with, e.g.::
major_version=3
version1=2
version2=0
version_svn=1066
release=${major_version}.${version1}.${version2}.${version_svn}/1.${disttag}.python${python_version}
rpmbuild -bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} --with version_svn=${version_svn} --with keep_install=1 \
${modules_usage} --with default_version -with system=${rpm_platform} \
--with python_version=${python_version} \
--with prefix=/home/camp/rpmbuild/opt/Intel-Nehalem-el5/campos-ase3/${release} campos-ase3.spec
rm /home/camp/rpmbuild/Intel-Nehalem-el5/RPMS/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version}.x86_64.rpm
dir=~/Intel-Nehalem-el5/BUILD/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version}-root
ln -s ${dir}/etc/modulefiles/campos-ase3/${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version} \
~/Intel-Nehalem-el5/modulefiles.testing/campos-ase3
ln -s ${dir}/home/camp/rpmbuild/opt/Intel-Nehalem-el5/campos-ase3/${major_version}.${version1}.${version2}.${version_svn} ~/opt/Intel-Nehalem-el5/campos-ase3
blacs
-----
`BLACS `_ is used by ScaLapack.
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.openmpi.default.sh
. fys.build.blacs.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.build.blacs.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.build.blacs.sh
#
. fys.set.Niflheim.pathscale.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.build.blacs.sh
#
. fys.set.Niflheim.open64.4.2.1.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.build.blacs.sh
scalapack
---------
`SCALAPACK `_.
On a custom system build the following RPMS::
. fys.set.gfortran.default.sh
. fys.set.openmpi.default.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran.4.1.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.default.sh
. fys.set.lapack.default.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.goto.1.26.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
#
. fys.set.Niflheim.open64.4.2.1.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.Niflheim.atlas.3.8.3.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.build.scalapack.sh
PDSYEVRnew
----------
- `PDSYEVRnew `_ ScaLAPACK's new parallel MRRR algorithm
for computing eigenpairs of large real symmetric or complex Hermitian matrices.
On Niflheim build the following RPMS::
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.set.Niflheim.scalapack.1.8.0.sh
. fys.build.PDSYEVRnew.sh
#
. fys.set.Niflheim.gfortran43.4.3.2.sh
. fys.set.Niflheim.openmpi.1.3.3.sh
. fys.set.blas.acml.4.3.0.sh
. fys.set.lapack.acml.sh
. fys.set.Niflheim.goto.1.26.sh
. fys.set.Niflheim.blacs.1.1.sh
. fys.set.Niflheim.scalapack.1.8.0.sh
. fys.build.PDSYEVRnew.sh
campos-gpaw-setups
------------------
Build the following RPMS::
. fys.build.gpaw-setups.0.5.3574.sh
campos-gpaw
-----------
On a custom system build the following RPMS::
# March 3 2010: results in "orthogonalization failed" with EPEL's atlas on el5.x64_64
. fys.set.gpaw.default.sh
. fys.set.atlas.default.sh
. fys.build.gpaw.sh
# optional build using netlib blas/lapack
. fys.set.gpaw.default.sh
. fys.build.gpaw.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh
. fys.build.gpaw.sh
#
. fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh
. fys.build.gpaw.sh
compiler=gfortran43 # only on fjorm
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=goto
blas_version=1.26
blasdir=/opt/${blas}/${blas_version}/1.${disttag}.${compiler}.${compiler_version}.smp/lib64
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=blas
blas_version=3.0.37.el5
blasdir=/usr/lib64
lapack=lapack
lapack_version=3.0.37.el5
lapackdir=/usr/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
**Note**: open64 compiler fails with::
/usr/bin/ld: /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1/libmv.a(vcos.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1/libmv.a: could not read symbols: Bad value
Optional builds::
# defaut installation using atlas - gpaw-test fails for diagonalization on el5 x86_64 18 Jan 2010
compiler=gfortran
compiler_version=`rpm -q --queryformat='%{RPMTAG_VERSION}\n' libgfortran | head -1`
dir=`rpm -ql libgfortran | grep "libgfortran\.so" | head -1`
compiler_libdir=`dirname ${dir}`
dir=`which gfortran`
compiler_bindir=`dirname ${dir}`
blas=atlas
blas_version=`rpm -q --queryformat='%{RPMTAG_VERSION}\n' atlas | head -1 | sed 's/-/./g'`
dir=`rpm -ql atlas | grep "libatlas\.so" | head -1`
blasdir=`dirname ${dir}`
lapack=lapack
lapack_version=`rpm -q --queryformat='%{RPMTAG_VERSION}\n' atlas | head -1 | sed 's/-/./g'`
lapackdir=${blasdir}
openmpi_version=`rpm -q --queryformat='%{RPMTAG_VERSION}\n' openmpi | head -1`
dir=`rpm -ql openmpi | grep mpiexec | head -1`
ompi_bindir=`dirname ${dir}`
dir=`rpm -ql openmpi-devel | grep "libmpi\.so" | head -1`
if test -z $dir; then dir=`rpm -ql openmpi | grep "libmpi\.so" | head -1`; fi
ompi_libdir=`dirname ${dir}`
dir=`rpm -ql openmpi-devel | grep "mpif\.h" | head -1`
if test -z $dir; then dir=`rpm -ql openmpi | grep "mpif\.h" | head -1`; fi
ompi_includedir=`dirname ${dir}`
blacs=none
scalapack=none
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=pathscale # only on fjorm
# note --with sl_second_underscore=1 is necessary for rpmbuild
compiler_version=3.2
compiler_libdir=/opt/pathscale/lib/3.2
compiler_bindir=/opt/pathscale/bin
blas=goto
blas_version=1.26
blasdir=/opt/${blas}/${blas_version}/1.${disttag}.${compiler}.${compiler_version}.smp/lib64
lapack=acml
lapack_version=4.0.1
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
#scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.acml.4.0.1.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran43 # problems reported on thul
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=atlas
blas_version=3.8.3
blasdir=/opt/${blas}/${blas_version}/1.${disttag}.${compiler}.${compiler_version}/lib64
lapack=atlas
lapack_version=3.8.3
lapackdir=/opt/${lapack}/${lapack_version}/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=blas
blas_version=3.0.37.el5
blasdir=/usr/lib64
lapack=lapack
lapack_version=3.0.37.el5
lapackdir=/usr/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.0.1
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.0.1
lapackdir=/opt/${blas}/${lapack_version}/${compiler}64/lib
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=ifort # fails on thul
compiler_version=11.0
compiler_libdir=/opt/intel/Compiler/11.0/083/lib/intel64
compiler_bindir=/opt/intel/Compiler/11.0/083/bin/intel64
blas=mkl
blas_version=10.1.3.027
blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t
lapack=mkl_lapack
lapack_version=10.1.3.027
lapackdir=${blasdir}
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=mkl
blacsdir=${blasdir}
scalapack=mkl
scalapackdir=${blasdir}
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran43 # only on thul # fails on thul
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=mkl
blas_version=10.1.3.027
blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t
lapack=mkl_lapack
lapack_version=10.1.3.027
lapackdir=${blasdir}
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=mkl
blacsdir=${blasdir}
scalapack=mkl
scalapackdir=${blasdir}
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
compiler=gfortran43 # only on thul
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=mkl
blas_version=10.2.1.017
blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t
lapack=mkl_lapack
lapack_version=10.2.1.017
lapackdir=${blasdir}
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=mkl
blacsdir=${blasdir}
scalapack=mkl
scalapackdir=${blasdir}
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.without_ase.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
Asap
----
On a custom system build the following RPMS::
. fys.set.Asap.default.sh
. fys.build.Asap.sh
On Niflheim build the following RPMS::
# only on fjorm
. fys.set.Niflheim.Asap.3.2.6.pathscale.3.2.openmpi.1.3.3.sh
. fys.build.Asap.sh
# only on thul
. fys.set.Niflheim.Asap.3.2.6.ifort.11.0.openmpi.1.3.3.sh
. fys.build.Asap.sh
abinit
------
.. _abinit-pseudopotentials-1.tar.gz: attachment:abinit-pseudopotentials-1.tar.gz
abinit-pseudopotentials-1.tar.gz_
- abinit pseudopotentials
Build the following RPMS::
. fys.build.abinit-pseudopotentials.1.sh
- abinit
`abinit `_ is a Density Functional Theory (DFT) package with pseudopotentials and a planewave basis.
On a custom system build the following RPMS::
. fys.set.abinit.5.4.4p.default.sh
. fys.build.abinit.5.4.4p.sh
On Niflheim build the following RPMS::
. fys.set.Niflheim.Asap.3.2.6.pathscale.3.2.openmpi.1.3.3.sh
. fys.build.abinit.5.4.4p.sh
siesta
------
.. _siesta-pseudopotentials-2.tar.gz: attachment:siesta-pseudopotentials-2.tar.gz
siesta-pseudopotentials-2.tar.gz_
- siesta pseudopotentials
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget --no-check-certificate \
"https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS?action=AttachFile&do=get&target=siesta-pseudopotentials-2.tar.gz" \
-O siesta-pseudopotentials-2.tar.gz
cd ~/rpmbuild/SPECS
rpmbuild -bb ${modules_usage} --with default_version siesta-pseudopotentials.spec
- siesta
`siesta `_ (Spanish Initiative for Electronic Simulations with Thousands of Atoms)
is both a method and its computer program implementation, to perform electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids.
Build the following RPMS::
cd ~/rpmbuild/SPECS
major_version=2
version1=0
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with blacs=${blacs} --with blacsdir=${blacsdir} \
--with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/siesta${major_version}/${major_version}.${version1}/${release} siesta.spec
espresso
--------
- espresso pseudopotentials
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.quantum-espresso.org/pseudo/espresso_pp.tar.gz
cd ~/rpmbuild/SPECS
rpmbuild -bb ${modules_usage} --with default_version espresso_pp.spec
- espresso
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.pwscf.org/downloads/PWversion/4.0.5/espresso-4.0.5.tar.gz
cd ~/rpmbuild/SPECS
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
fftw=fftw3
fftw_libdir=/opt/${fftw}/3.2.1/12.${disttag}.${compiler}.${compiler_version}/lib64
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw}
rpmbuild --bb --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with fftw=${fftw} --with fftw_libdir=${fftw_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with blacs=${blacs} --with blacsdir=${blacsdir} \
--with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/espresso/4.0.5/${release} espresso.spec
yambo
-----
- yambo
`yambo `_ is a FORTRAN/C code for Many-Body calculations in solid state and molecular physics.
Yambo relies on the Kohn-Sham wavefunctions generated by two DFT public codes: abinit, and PWscf.
This build creates interfaces to abinit and PWscf.
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget "http://www.yambo-code.org/counter/click.php?id=26"
cd ~/rpmbuild/SPECS
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
fftw=fftw3
fftw_libdir=/opt/${fftw}/3.2.1/12.${disttag}.${compiler}.${compiler_version}/lib64
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw}
rpmbuild --bb --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with fftw=${fftw} --with fftw_libdir=${fftw_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with blacs=${blacs} --with blacsdir=${blacsdir} \
--with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \
--with iotkdir=/opt/espresso/4.0.5/${release}/share/espresso/iotk \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/yambo/3.2.1.448/${release} yambo.spec
elk
---
- elk species
Build the following RPMS::
major_version=0
version1=9
version2=278
cd ~/rpmbuild/SOURCES&& wget http://downloads.sourceforge.net/project/elk/elk/${major_version}.${version1}.${version2}/elk-${major_version}.${version1}.${version2}.tgz
cd ~/rpmbuild/SPECS
rpmbuild -bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} \
${modules_usage} --with default_version elk-species.spec
- elk
Build the following RPMS::
major_version=0
version1=9
version2=278
cd ~/rpmbuild/SOURCES&& wget http://downloads.sourceforge.net/project/elk/elk/${major_version}.${version1}.${version2}/elk-${major_version}.${version1}.${version2}.tgz
cd ~/rpmbuild/SPECS
thread_mode=nomp
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
rpmbuild --bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with thread_mode=${thread_mode} --with parallel=1 \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/elk/${major_version}.${version1}.${version2}/${release} elk.spec
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=blas
blas_version=3.0.37.el5
blasdir=/usr/lib64
lapack=lapack
lapack_version=3.0.37.el5
lapackdir=/usr/lib64
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
# multithreaded
thread_mode=mp
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64_${thread_mode}/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64_${thread_mode}/lib
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
# multithreaded
thread_mode=mp
compiler=gfortran43 # only on fjorm # sometimes freezes in threaded mode
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=goto
blas_version=1.26
blasdir=/opt/${blas}/${blas_version}/1.${disttag}.${compiler}.${compiler_version}.smp/lib64
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64_${thread_mode}/lib
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
vtk
---
- cmake
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.cmake.org/files/v2.6/cmake-2.6.4.tar.gz
cd ~/rpmbuild/SOURCES&& wget "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c Super Stable/1.06.35/xmlrpc-c-1.06.35.tgz"
cd ~/rpmbuild/SPECS
rpmbuild -bb --with bootstrap --without gui cmake.spec # install the resulting RPM
rpmbuild -bb xmlrpc-c.spec # install the resulting RPM
rpm -e cmake
rpmbuild -bb --without gui cmake.spec # install the resulting RPM
- vtkdata
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.vtk.org/files/release/5.4/vtkdata-5.4.2.tar.gz
cd ~/rpmbuild/SPECS
rpmbuild -bb --with version1=4 --with version2=2 ${modules_usage} --with default_version=1 \
--with prefix=/opt/vtkdata/5.4.2/1.${disttag} vtkdata.spec
- vtk
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.vtk.org/files/release/5.4/vtk-5.4.2.tar.gz
cd ~/rpmbuild/SPECS
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
rpmbuild -bb --without qt4 --with version1=4 --with version2=2 \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with python_version=${python_version} \
--with prefix=/opt/vtk/5.4.2/1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version} vtk.spec
octopus
-------
- octopus
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget "http://www.tddft.org/programs/octopus/down.php?file=3.1.0/octopus-3.1.0.tar.gz"
cd ~/rpmbuild/SPECS
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
fftw=fftw3
fftw_libdir=/opt/${fftw}/3.2.1/12.${disttag}.${compiler}.${compiler_version}/lib64
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
gsl_libdir=/usr/lib64
gsl_includedir=/usr/include/gsl
gsl_bindir=/usr/bin
arpack=arpack
arpackdir=/usr/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw}
rpmbuild --bb --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with fftw=${fftw} --with fftw_libdir=${fftw_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with arpack=${arpack} --with arpackdir=${arpackdir} \
--with gsl_libdir=${gsl_libdir} --with gsl_includedir=${gsl_includedir} --with gsl_bindir=${gsl_bindir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/octopus/3.1.0/${release} octopus.spec
TAU
---
- pdtoolkit
`Program Database Toolkit `_ is a framework for analyzing source code written in several programming languages
and for making rich program knowledge accessible to developers of static and dynamic analysis tools. PDT is required by TAU.
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.cs.uoregon.edu/research/paracomp/pdtoolkit/Download/pdt_latest.tar.gz
mv pdt_latest.tar.gz `tar ztf pdt_latest.tar.gz | head -1 | cut -d "/" -f 2`.tar.gz
cd ~/rpmbuild/SPECS
major_version=3
version1=14
version2=1
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
rpmbuild -bb --with version1=${version1} --with version2=${version2} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with python_version=${python_version} \
--with prefix=/opt/pdtoolkit/${major_version}.${version1}.${version2}/1.${disttag}.${compiler}.${compiler_version}.python${python_version} pdtoolkit.spec
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
!rpmbuild # as rpmbuild above
- tau
`TAU Performance System® `_ is a portable profiling and tracing toolkit
for performance analysis of parallel programs written in Fortran, C, C++, Java, Python.
Build the following RPMS::
cd ~/rpmbuild/SOURCES&& wget http://www.cs.uoregon.edu/research/paracomp/tau/tauprofile/dist/tau_latest.tar.gz
mv tau_latest.tar.gz `tar ztf tau_latest.tar.gz | head -1 | cut -d "/" -f 1`.tar.gz
cd ~/rpmbuild/SPECS
major_version=2
version1=18
version2=2p4
module load PDTOOLKIT/3.14.1-1.el5.fys.gfortran.4.1.2.python${python_version}
pdt_rootdir=${PDTROOT}
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version}
rpmbuild -bb -with version1=${version1} --with version2=${version2} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with pdt_rootdir=${pdt_rootdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with python_version=${python_version} \
--with prefix=/opt/tau/${major_version}.${version1}.${version2}/${release} tau.spec
module load PDTOOLKIT/3.14.1-1.el5.fys.gfortran43.4.3.2.python${python_version}
pdt_rootdir=${PDTROOT}
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
release=1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version}
!rpmbuild # as rpmbuild above
vasp
----
Installed with restricted access under `vasp` UNIX group (needs te be created in advance).
- vasp potentials
Download ``potpaw/potcar.date.tar``, ``potpaw_GGA/potcar.date.tar``, and ``potpaw_PBE/potcar.date.tar``
to ``~/rpmbuild/SOURCES``. Create links to the downloaded files so the files
are named explicitly with the string ``date`` (not the actual dates), for example::
ls -al ~/rpmbuild/SOURCES/potpaw_*potcar.date.tar
lrwxrwxrwx 1 rpmbuild campnone 29 Sep 25 17:15 ../SOURCES/potpaw_GGA_potcar.date.tar -> potpaw_GGA/potcar.06Feb03.tar
lrwxrwxrwx 1 rpmbuild campnone 29 Sep 25 17:14 ../SOURCES/potpaw_PBE_potcar.date.tar -> potpaw_PBE/potcar.05Feb03.tar
lrwxrwxrwx 1 rpmbuild campnone 25 Sep 25 17:14 ../SOURCES/potpaw_potcar.date.tar -> potpaw/potcar.05Feb03.tar
Build the following RPMS::
cd ~/rpmbuild/SPECS
rpmbuild -bb ${modules_usage} --with default_version vasp-potpaw.spec
- vasp
`vasp `_. Download ``vasp.5.X.tar.gz`` and ``vasp.5.lib.tar.gz`` to ``~/rpmbuild/SOURCES``.
Optionally download also ``vtstcode.tar.gz`` from http://theory.cm.utexas.edu/vtsttools/downloads/.
Build the following RPMS::
cd ~/rpmbuild/SPECS
major_version=5
version1=2
# Compile with VASP TST library: http://theory.cm.utexas.edu/vtsttools/downloads/
tst=false # or true
if [ "$tst" == "false" ];
then
vasp_tst='.'
else
vasp_tst='.tst.'
fi
compiler=gfortran
compiler_version=4.1.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.0.1
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.0.1
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
fftw=fftw3
fftw_libdir=/opt/${fftw}/3.2.1/12.${disttag}.${compiler}.${compiler_version}/lib64
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
#scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.blas.3.0.37.el5.lapack.3.0.37.el5/lib64
release=1.${disttag_network}${vasp_tst}${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw}
rpmbuild --bb --with tst=${tst} --with major_version=${major_version} --with version1=${version1} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with fftw=${fftw} --with fftw_libdir=${fftw_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with blacs=${blacs} --with blacsdir=${blacsdir} \
--with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/vasp/${major_version}.${version1}/${release} vasp.spec
compiler=gfortran43 # 25 Sep 2009: segmentation fault when compiling dipol.f90
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
fftw=fftw3
fftw_libdir=/opt/${fftw}/3.2.1/12.${disttag}.${compiler}.${compiler_version}/lib64
netcdf=netcdf4
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include
netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}${vasp_tst}${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw}
!rpmbuild # as rpmbuild above
exciting
--------
- exciting species
Build the following RPMS::
major_version=9
version1=10
version2=None
cd ~/rpmbuild/SOURCES&& wget http://static.exciting-code.org/exciting.hydrogen.${major_version}.${version1}.tar.gz
cd ~/rpmbuild/SPECS
rpmbuild -bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} \
${modules_usage} --with default_version exciting-species.spec
- exciting
**Note**: currently (24 Nov 2009) perl-XML-SAX-0.14-5 is broken ``_ on EL5; if exciting's tests complain about::
could not find ParserDetails.ini
do as root::
perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()"
Build the following RPMS::
major_version=9
version1=10
version2=None
cd ~/rpmbuild/SOURCES&& wget http://static.exciting-code.org/exciting.hydrogen.${major_version}.${version1}.tar.gz
cd ~/rpmbuild/SPECS
thread_mode=nomp
module load g95 # only on fjorm
compiler=g95 # only on fjorm
compiler_version=0.91
compiler_libdir=/opt/g95/0.91/lib/gcc-lib/x86_64-unknown-linux-gnu/4.0.3
compiler_bindir=/opt/g95/0.91/bin
blas=blas
blas_version=3.0.37.el5
blasdir=/usr/lib64
lapack=lapack
lapack_version=${blas_version}
lapackdir=/usr/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
rpmbuild --bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with thread_mode=${thread_mode} --with parallel=1 \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with arpack=arpack \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/exciting/${major_version}.${version1}/${release} exciting.spec
module load ifort # only on thul
compiler=ifort # only on thul
compiler_version=11.0
compiler_libdir=/opt/intel/Compiler/11.0/083/lib/intel64
compiler_bindir=/opt/intel/Compiler/11.0/083/bin/intel64
blas=mkl
blas_version=10.1.3.027
blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t
lapack=mkl_lapack
lapack_version=${blas_version}
lapackdir=${blasdir}
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
fleur
-----
- fleur
`fleur `_. Download the source to ``~/rpmbuild/SOURCES``.
Build the following RPMS::
cd ~/rpmbuild/SPECS
major_version=25
version1=g
if [ "$version1" == "None" ];
then
fleur_version=${major_version}
else
fleur_version=${major_version}.${version1}
fi
compiler=gfortran43 #
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=blacs
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64
scalapack=scalapack
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64
release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \
--with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \
--with blacs=${blacs} --with blacsdir=${blacsdir} \
--with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/fleur/${fleur_version}/${release} fleur.spec
module load g95 # only on fjorm
compiler=g95 # only on fjorm
compiler_version=0.91
compiler_libdir=/opt/g95/0.91/lib/gcc-lib/x86_64-unknown-linux-gnu/4.0.3
compiler_bindir=/opt/g95/0.91/bin
blas=blas
blas_version=3.0.37.el5
blasdir=/usr/lib64
lapack=lapack
lapack_version=${blas_version}
lapackdir=/usr/lib64
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=none
scalapack=none
release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
module load ifort # only on thul
compiler=ifort # only on thul
compiler_version=11.0
compiler_libdir=/opt/intel/Compiler/11.0/083/lib/intel64
compiler_bindir=/opt/intel/Compiler/11.0/083/bin/intel64
blas=mkl
blas_version=10.1.3.027
blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t
lapack=mkl_lapack
lapack_version=${blas_version}
lapackdir=${blasdir}
openmpi_version=1.3.3
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64
ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include
ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin
blacs=mkl
blacsdir=${blasdir}
scalapack=mkl
scalapackdir=${blasdir}
release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
gulp
----
Installed with restricted access under `gulp` UNIX group (needs te be created in advance).
- gulp
`gulp `_. Download ``gulp.3.4.source.tar.gz`` ``~/rpmbuild/SOURCES``.
Build the following RPMS::
major_version=3
version1=4
cd ~/rpmbuild/SPECS
thread_mode=nomp
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \
--with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \
--with compiler=${compiler} --with compiler_version=${compiler_version} \
--with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \
--with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \
--with thread_mode=${thread_mode} --with parallel=1 \
${modules_usage} --with default_version=1 \
--with system=${rpm_platform} \
--with prefix=/opt/gulp/${major_version}.${version1}/${release} gulp.spec
# multithreaded
thread_mode=mp
compiler=gfortran43
compiler_version=4.3.2
compiler_libdir=/usr/lib64
compiler_bindir=/usr/bin
blas=acml
blas_version=4.3.0
blasdir=/opt/${blas}/${blas_version}/${compiler}64_${thread_mode}/lib
lapack=acml
lapack_version=4.3.0
lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64_${thread_mode}/lib
release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version}
!rpmbuild # as rpmbuild above
Testing packages
================
Test `dacapo` installation (as **normal** user!).
If you use modules::
module load campos-dacapo # fulfill all dependencies requested by module
ulimit -s 500000 # dacapo needs a large stack
Test with (make sure that `/scratch/$USER` exists)::
cp -r `rpm -ql campos-dacapo-python | grep "share/campos-dacapo-python$"` /tmp
cd /tmp/campos-dacapo-python/Tests
python test.py 2>&1 | tee test.log
It can take up to 1 day.
Please consider disabling these "long" tests in `test.py`::
tests.remove('../Examples/Wannier-ethylene.py')
tests.remove('../Examples/Wannier-Pt4.py')
tests.remove('../Examples/Wannier-Ptwire.py')
tests.remove('../Examples/Wannier-Fe-bcc.py')
tests.remove('../Examples/transport_1dmodel.py')
**Note** all `vtk` related tests will fail.
Test `gpaw` installation (as **normal** user!):
If you use modules::
module load campos-gpaw # fulfill all dependencies requested by module
Test with::
cp -r `rpm -ql campos-gpaw | grep "share/campos-gpaw/test$"` /tmp/test.gpaw.$$
cd /tmp/test.gpaw.*
python test.py 2>&1 | tee test.log
It takes about 20 minutes.