I ran into the following problem when trying to build multiple rpms from
the SRPM for 1.2.5.  Everything compiled fine and building a single rpm
had no errors.  However, trying to build multiple packages errored out
with: 

openmpi-1.2.5-1-root
error: Installed (but unpackaged) file(s) found:
   /usr/lib64/mpi.mod

RPM build errors:
    File listed twice: /etc
    File listed twice: /etc/openmpi-default-hostfile
    File listed twice: /etc/openmpi-mca-params.conf
    File listed twice: /etc/openmpi-totalview.tcl
    Installed (but unpackaged) file(s) found:
   /usr/lib64/mpi.mod

My rpmbuild command line was:
rpmbuild -bb --define 'build_all_in_one_rpm 0' --define
'configure_options / --with-mip-f90-size=medium
--with-tm=/usr/local/lib64' openmpi-1.2.5.spec

The multiple files problem was cause by %{_sysconfdir} getting included
twice in the %files section for the runtime package in the spec file.
Once on line 660 and once on line 675 .  I removed the second instance
but I'm not sure if that was the correct one.  It might cause problems
if you were installing to /opt.  Maybe the else statement on line 659
and line 660 should be removed since %{_sysconfdir} needs to be included
no matter where you are installing and should be already be defined
correctly for both.

The other problem was a little trickier because I don't know which
package mpi.mod should go in.  As a quick fix I just added the line
%{_libdir}/mpi.mod to the runtime package %files.  It probably should be
added to either runtime.files or devel.files when they are created.

After making these changes rpmbuild worked just fine.   

I doubt that it's needed but here's a diff just for the hell of it.

--- openmpi-1.2.5.spec  2008-01-08 11:08:57.000000000 -0800
+++ openmpi-1.2.5.spec.new      2008-03-13 15:43:19.000000000 -0700
@@ -672,7 +672,7 @@
 %dir %{_libdir}
 %dir %{_libdir}/openmpi
 %doc README INSTALL LICENSE
-%{_sysconfdir}
+%{_libdir}/mpi.mod
 %{_pkgdatadir}
 %{_bindir}/mpirun
 %{_bindir}/mpiexec

-Christopher

Reply via email to