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