Hmm. I'm not sure why --rebuild is different than not--rebuild. I'm not an RPM expert, though...

On Jun 26, 2012, at 4:24 PM, Lloyd Brown wrote:

> Something else interesting that I just discovered. If I do this, I have
> the problem:
>
> rpmbuild --rebuild <various options> -bb path/to/openmpi-1.6-2.src.rpm
>
> However, if I do an "rpm -i path/to/openmpi-1.6-2.src.rpm", and then do
> very-similar rpmbuild syntax, it puts everything where I want it:
>
> rpmbuild <various options> -bb path/to/openmpi-1.6.spec
>
> In this case, the "<various options>" are all exactly the same. Clearly
> there's something I'm missing about the RPM build process.
>
> Lloyd Brown
> Systems Administrator
> Fulton Supercomputing Lab
> Brigham Young University
> http://marylou.byu.edu>
> On 06/26/2012 12:40 PM, Lloyd Brown wrote:
>> 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
>> openmpi-1.6-2.src.rpm
>>
>> 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.
>>
>> Thanks,
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users