Open MPI logo

Open MPI User's Mailing List Archives

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

Subject: Re: [OMPI users] OpenMPI 1.4 RPM Spec file problem
From: Jim Kusznir (jkusznir_at_[hidden])
Date: 2009-12-09 18:41:37


By the way, if I set build_all_in_one_rpm to 1, it works fine...

--Jim

On Wed, Dec 9, 2009 at 1:47 PM, Jim Kusznir <jkusznir_at_[hidden]> wrote:
> Hi all:
>
> I'm trying to build openmpi-1.4 rpms using my normal (complex) rpm
> build commands, but its failing.  I'm running into two errors:
>
> One (on gcc only): the D_FORTIFY_SOURCE build failure.  I've had to
> move the if test "$using_gcc" = 0; then line down to after the
> RPM_OPT_FLAGS= that includes D_FORTIFY_SOURCE; otherwise the compile
> blows up.
>
> The second, and in my opinion, more major rpm spec file bug is
> something with the files specification.  I build multiple versions of
> OpenMPI to accomidate the collection of compilers I use (on this
> machine, I have intel 10.1 and GCC, and will have to add 9.1 per user
> request); on others, I use PGI and GCC.  In any case, here's my build
> command for Intel:
>
> CC=icc CXX=icpc F77=ifort FC=ifort rpmbuild -bb --define
> 'install_in_opt 1' --define 'install_modulefile 1' --define
> 'modules_rpm_name Modules' --define 'build_all_in_one_rpm 0'  --define
> 'configure_options --with-tm=/opt/torque' --define '_name
> openmpi-intel' openmpi-1.4.spec
>
> Unfortunately, the filespec is somehow broke and it ends up missing
> most (all?) the files, and failing in the final stage of RPM creation:
>
> -------------------
> Processing files: openmpi-intel-docs-1.4-1
> Finding  Provides: /usr/lib/rpm/find-provides openmpi-intel
> Finding  Requires: /usr/lib/rpm/find-requires openmpi-intel
> Finding  Supplements: /usr/lib/rpm/find-supplements openmpi-intel
> Requires(rpmlib): rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> rpmlib(CompressedFileNames) <= 3.0.4-1
> Requires: openmpi-intel-runtime
> Checking for unpackaged file(s): /usr/lib/rpm/check-files
> /var/tmp/openmpi-intel-1.4-1-root
> error: Installed (but unpackaged) file(s) found:
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfaux
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfcompress
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfconfig
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfdump
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfinfo
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfmerge
>   /opt/openmpi-intel/1.4/bin/mpiCC-vt
>   /opt/openmpi-intel/1.4/bin/mpic++-vt
>   /opt/openmpi-intel/1.4/bin/mpicc-vt
>   /opt/openmpi-intel/1.4/bin/mpicxx-vt
>   /opt/openmpi-intel/1.4/bin/mpif77-vt
>   /opt/openmpi-intel/1.4/bin/mpif90-vt
>   /opt/openmpi-intel/1.4/bin/ompi-checkpoint
>   /opt/openmpi-intel/1.4/bin/ompi-clean
>   /opt/openmpi-intel/1.4/bin/ompi-iof
>   /opt/openmpi-intel/1.4/bin/ompi-ps
>   /opt/openmpi-intel/1.4/bin/ompi-restart
>   /opt/openmpi-intel/1.4/bin/ompi-server
>   /opt/openmpi-intel/1.4/bin/opari
>   /opt/openmpi-intel/1.4/bin/orte-clean
>   /opt/openmpi-intel/1.4/bin/orte-iof
>   /opt/openmpi-intel/1.4/bin/orte-ps
>   /opt/openmpi-intel/1.4/bin/otfdecompress
>   /opt/openmpi-intel/1.4/bin/vtcc
>   /opt/openmpi-intel/1.4/bin/vtcxx
>   /opt/openmpi-intel/1.4/bin/vtf77
>   /opt/openmpi-intel/1.4/bin/vtf90
>   /opt/openmpi-intel/1.4/bin/vtfilter
>   /opt/openmpi-intel/1.4/bin/vtunify
>   /opt/openmpi-intel/1.4/etc/openmpi-default-hostfile
>   /opt/openmpi-intel/1.4/etc/openmpi-mca-params.conf
>   /opt/openmpi-intel/1.4/etc/openmpi-totalview.tcl
>   /opt/openmpi-intel/1.4/share/FILTER.SPEC
>   /opt/openmpi-intel/1.4/share/GROUPS.SPEC
>   /opt/openmpi-intel/1.4/share/METRICS.SPEC
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/UserManual.html
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/UserManual.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/Readme.html
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/lacsi01.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/lacsi01.ps.gz
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/opari-logo-100.gif
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/otftools.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/specification.pdf
>   /opt/openmpi-intel/1.4/share/vtcc-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtcxx-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtf77-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtf90-wrapper-data.txt
>
>
> RPM build errors:
>    Installed (but unpackaged) file(s) found:
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfaux
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfcompress
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfconfig
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfdump
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfinfo
>   /opt/openmpi-intel/1.4/bin/ia64-suse-linux-otfmerge
>   /opt/openmpi-intel/1.4/bin/mpiCC-vt
>   /opt/openmpi-intel/1.4/bin/mpic++-vt
>   /opt/openmpi-intel/1.4/bin/mpicc-vt
>   /opt/openmpi-intel/1.4/bin/mpicxx-vt
>   /opt/openmpi-intel/1.4/bin/mpif77-vt
>   /opt/openmpi-intel/1.4/bin/mpif90-vt
>   /opt/openmpi-intel/1.4/bin/ompi-checkpoint
>   /opt/openmpi-intel/1.4/bin/ompi-clean
>   /opt/openmpi-intel/1.4/bin/ompi-iof
>   /opt/openmpi-intel/1.4/bin/ompi-ps
>   /opt/openmpi-intel/1.4/bin/ompi-restart
>   /opt/openmpi-intel/1.4/bin/ompi-server
>   /opt/openmpi-intel/1.4/bin/opari
>   /opt/openmpi-intel/1.4/bin/orte-clean
>   /opt/openmpi-intel/1.4/bin/orte-iof
>   /opt/openmpi-intel/1.4/bin/orte-ps
>   /opt/openmpi-intel/1.4/bin/otfdecompress
>   /opt/openmpi-intel/1.4/bin/vtcc
>   /opt/openmpi-intel/1.4/bin/vtcxx
>   /opt/openmpi-intel/1.4/bin/vtf77
>   /opt/openmpi-intel/1.4/bin/vtf90
>   /opt/openmpi-intel/1.4/bin/vtfilter
>   /opt/openmpi-intel/1.4/bin/vtunify
>   /opt/openmpi-intel/1.4/etc/openmpi-default-hostfile
>   /opt/openmpi-intel/1.4/etc/openmpi-mca-params.conf
>   /opt/openmpi-intel/1.4/etc/openmpi-totalview.tcl
>   /opt/openmpi-intel/1.4/share/FILTER.SPEC
>   /opt/openmpi-intel/1.4/share/GROUPS.SPEC
>   /opt/openmpi-intel/1.4/share/METRICS.SPEC
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/UserManual.html
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/UserManual.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/Readme.html
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/lacsi01.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/lacsi01.ps.gz
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/opari/opari-logo-100.gif
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/ChangeLog
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/LICENSE
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/otftools.pdf
>   /opt/openmpi-intel/1.4/share/vampirtrace/doc/otf/specification.pdf
>   /opt/openmpi-intel/1.4/share/vtcc-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtcxx-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtf77-wrapper-data.txt
>   /opt/openmpi-intel/1.4/share/vtf90-wrapper-data.txt
> ---------------
>
> I took a look at the spec file, and its not clear to me this time
> what's breaking.  If %{name} is being properly expanded, then at least
> all the */share/* stuff should have been caught (although I'm not
> clear on how the rest of the stuff was supposed to be caught).
>
> Any suggestions / bugfixes to correct this?
>
> --Jim
>