On Dec 9, 2009, at 4:47 PM, Jim Kusznir wrote:

> 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.

Hmm.  Can you explain why / provide more detail?

> 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).

Can you send the specific rpmbuild command line that you're using to build the 
openmpi-1.4 srpm?

-- 
Jeff Squyres
jsquy...@cisco.com


Reply via email to