RPM of exciting

5 views
Skip to first unread message

Marcin Dulak

unread,
Nov 25, 2009, 6:44:48 AM11/25/09
to excitingdft
Hi,

i'm trying exciting.hydrogen.9.10.tar.gz on CentOS 5.4 i686 with
g95-0.91.
There are tests that fail (I attach the failed.xml file (the largest
one, but not complete list of failures)).

I would also like to comment on packaging of exciting:
- i think it's more common to name the tar file using "exciting-
hydrogen" instead of exciting.hydrogen
Is hydrogen a kind of version number?
This will cause some troubles for RPM packaging, if the next release
is called helium, then RPM will treat it as two different packages.
I see in http://static.exciting-code.org/exciting.9.10.linux32.deb
that "hydrogen" is skipped.
- it would be better that the contents of the tar file corresponds to
the name of the package:
currently exciting.hydrogen.9.10.tar.gz contains "exciting" directory.
- adding an option to skip compilation of blas/lapack/arpack, ... if
one wants to use an optimized one,
would save some compilation time,
- it would be nice to have a general make.inc that reads from
environment variables,
to avoid the captive interface,
- the tests report (accessed in a browser from report/index.html) is
not very clear:
clicking for example on "failed" for "Test run Nr:01" and "Test run Nr:
02" shows (slightly different) results from all test0* directories.

CAMd (http://www.camd.dtu.dk/) hosts currently an RPM spec file of
exciting.
RPM build instructions of exciting on CentOS 5.4 (probably works also
on Fedora Core):

0. as root:
yum install rpm-build blas-devel lapack-devel

1. as standard user:
cd; mkdir rpmbuild; cd rpmbuild; mkdir SPECS SOURCES BUILD
chmod -R go+rx ../rpmbuild
cd SPECS
RPM_ROOT=https://svn.fysik.dtu.dk/projects/rpmbuild/branches/
campos_installer/
wget ${RPM_ROOT}SPECS/exciting-species.spec
wget ${RPM_ROOT}SPECS/exciting.spec
wget http://www.g95.org/g95.spec
cd ../SOURCES
wget ${RPM_ROOT}SOURCES/exciting.make.inc
wget http://static.exciting-code.org/exciting.hydrogen.9.10.tar.gz
wget http://ftp.g95.org/v0.91/g95_source.tgz
wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.0.3/gcc-core-4.0.3.tar.gz

2. as standard user, for example on EL5/CentOS5, assumes bash:
disttag=el5.exciting
echo "%disttag $disttag" >> ~/.rpmmacros
echo "%_topdir ${HOME}/rpmbuild" >> ~/.rpmmacros
cd ~/rpmbuild/SPECS
rpmbuild -bb g95.spec
rpmbuild -bb --without default_version exciting-species.spec
chmod go+r ../RPMS/*/*.rpm
su -c "rpm -ivh ../RPMS/*/g95*.rpm"
su -c "rpm -ivh ../RPMS/noarch/*.rpm"

rpmbuild -bb --without default_version \
--with compiler=g95 --with compiler_version=0.91 --with
compiler_bindir=/usr/local/bin \
--with blas_version=3.0 --with lapack_version=3.0 \
--without parallel --with prefix=/opt/exciting/9.10-1.$
{disttag} exciting.spec
chmod go+r ../RPMS/*/*.rpm
su -c "rpm -ivh ../RPMS/*/exciting-*.rpm"
3. set environment variables with (you can copy these files to /etc/
profile.d to make it permanent):
. /opt/exciting-species/9.10-1.${disttag}/exciting-species-9.10.sh
. /opt/exciting/9.10-1.${disttag}/bin/*.sh

For a more complex build see
https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS?action=show#build-the-following-for-exciting

Best regards,

Marcin

Christian

unread,
Nov 26, 2009, 8:15:39 AM11/26/09
to excitingdft
Dear Marcin,
Thank you for the report of your experience. It just reminds me that
we are only at the beginning with the public presence of exciting.
Concerning the tests I have to admit that I did not look at them after
we did som changes in the output messages and the species definitions.
That did break the assertions. I have fixed the tests in the master
and will put them on github soon. In future we really want to be more
agressive about testing, the build/test system that should send more
nagging mail is not ready by now.

Concerning the version numbering: We have code names for publicity
like "Hydrogen" but technically for package managers we want to adhere
to a date based version numbering consisting of year and month. The
debian package has exciting as package name and a version number like
YY.mm.dd. I was not aware of that the naming of the tar archive
affects package managers.

Concerning the RPM I'm not sure if I understand you are building RPMs
of exciting?

About your remarks about the build system: I personally would like to
use something like the auto tools but there is only one thing I know
about them is that they can be a beast if you are not really knowing
what your are doing. So we rather stick to the simplistic approach
which requires user expertise. If however, someone volunteers to
implement a configure script I think we all would be glad. Such a
configure script would have to cover the blas lapack, but also the MPI
libraries and multithreading and the Fox configure script. Which is, I
guess, fairly complex. What do you think?

On 25 Nov., 12:44, Marcin Dulak <marcin.du...@gmail.com> wrote:
> Hi,
>
> i'm trying exciting.hydrogen.9.10.tar.gz on CentOS 5.4 i686 with
> g95-0.91.
> There are tests that fail (I attach the failed.xml file (the largest
> one, but not complete list of failures)).

>
> I would also like to comment on packaging of exciting:
> - i think it's more common to name the tar file using "exciting-
> hydrogen" instead of exciting.hydrogen
> Is hydrogen a kind of version number?
> This will cause some troubles for RPM packaging, if the next release
> is called helium, then RPM will treat it as two different packages.
> I see inhttp://static.exciting-code.org/exciting.9.10.linux32.deb
> wgethttp://www.g95.org/g95.spec
> cd ../SOURCES
> wget ${RPM_ROOT}SOURCES/exciting.make.inc
> wgethttp://static.exciting-code.org/exciting.hydrogen.9.10.tar.gz
> wgethttp://ftp.g95.org/v0.91/g95_source.tgz
> wgetftp://gcc.gnu.org/pub/gcc/releases/gcc-4.0.3/gcc-core-4.0.3.tar.gz
>
> 2. as standard user, for example on EL5/CentOS5, assumes bash:
> disttag=el5.exciting
> echo "%disttag $disttag" >> ~/.rpmmacros
> echo "%_topdir ${HOME}/rpmbuild" >> ~/.rpmmacros
> cd ~/rpmbuild/SPECS
> rpmbuild -bb g95.spec
> rpmbuild -bb --without default_version exciting-species.spec
> chmod go+r ../RPMS/*/*.rpm
> su -c "rpm -ivh ../RPMS/*/g95*.rpm"
> su -c "rpm -ivh ../RPMS/noarch/*.rpm"
>
> rpmbuild -bb --without default_version \
>              --with compiler=g95 --with compiler_version=0.91 --with
> compiler_bindir=/usr/local/bin \
>              --with blas_version=3.0 --with lapack_version=3.0 \
>              --without parallel --with prefix=/opt/exciting/9.10-1.$
> {disttag} exciting.spec
> chmod go+r ../RPMS/*/*.rpm
> su -c "rpm -ivh ../RPMS/*/exciting-*.rpm"
> 3. set environment variables with (you can copy these files to /etc/
> profile.d to make it permanent):
> . /opt/exciting-species/9.10-1.${disttag}/exciting-species-9.10.sh
> . /opt/exciting/9.10-1.${disttag}/bin/*.sh
>
> For a more complex build seehttps://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS?action=sho...
>
> Best regards,
>
> Marcin
Reply all
Reply to author
Forward
0 new messages