Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: [OMPI users] rpmbuild defining opt install path
From: Lloyd Brown (lloyd_brown_at_[hidden])
Date: 2012-06-26 14:40:51

Is there an easy way with the .spec file and the rpmbuild command, for
me to override the path the OpenMPI RPM installs into, in /opt?
Basically, I'm already doing something like this:

rpmbuild --rebuild --define 'install_in_opt 1' --define '_name
fsl_openmpi_intel' --define 'name fsl_openmpi_intel' ... -bb

For some reason, though, while most of it ends up in
"/opt/fsl_openmpi_intel/1.6", as I intend, a few files still get put
into "/opt/openmpi/1.6/etc", and I'm not sure what else I can do to put
it where I want:

> # rpm -q -l -p /root/rpmbuild/RPMS/x86_64/fsl_openmpi_intel-1.6-2.x86_64.rpm
> /opt/fsl_openmpi_intel
> /opt/fsl_openmpi_intel/1.6
> /opt/fsl_openmpi_intel/1.6/bin
> /opt/fsl_openmpi_intel/1.6/bin/mpiCC
> /opt/fsl_openmpi_intel/1.6/bin/mpiCC-vt
> /opt/fsl_openmpi_intel/1.6/bin/mpic++
> /opt/fsl_openmpi_intel/1.6/bin/mpic++-vt
> /opt/fsl_openmpi_intel/1.6/bin/mpicc
> ...
> /opt/fsl_openmpi_intel/1.6/share/vtsetup-data.dtd
> /opt/fsl_openmpi_intel/1.6/share/vtsetup-data.xml
> /opt/openmpi/1.6/etc
> /opt/openmpi/1.6/etc/openmpi-default-hostfile
> /opt/openmpi/1.6/etc/openmpi-mca-params.conf
> /opt/openmpi/1.6/etc/openmpi-totalview.tcl
> /opt/openmpi/1.6/etc/vt-java-default-filter.spec
> /opt/openmpi/1.6/etc/vtsetup-config.dtd
> /opt/openmpi/1.6/etc/vtsetup-config.xml

I realize it might not be a good idea in general to override "name" and
"_name" like this, so if there's an easier way, I'd be happy to do it.
I just haven't found anything yet, and haven't yet found the place in
the spec file where it's being set to "/opt/openmpi" again.

We're probably going to end up with at least 3 versions of v1.6 (gcc
compilers, intel compilers, pgi compilers) and possibly a few of a
previous version, so putting everything in /opt/openmpi/VERSION, is a
little problematic.


Lloyd Brown
Systems Administrator
Fulton Supercomputing Lab
Brigham Young University