Hi
Since 1.4.5 openmpi release, it is no longer possible to build openmpi
binary with rpmbuild --rebuild if system rpm package version is 4.4.x,
like in SLES10, SLES11, RHEL/CentOS 5.x.
For instance, on CentOS 5.8 x86_64 with rpm 4.4.2.3-28.el5_8:
[root@horizon _tmp]# rpmbuild --rebuild openmpi-1.4.5-1.src.rpm
Installing openmpi-1.4.5-1.src.rpm
warning: user jsquyres does not exist - using root
error: unpacking of archive failed on file
/usr/src/redhat/SPECS/openmpi-1.4.5.spec;4fc65c74: cpio: MD5 sum mismatch
error: openmpi-1.4.5-1.src.rpm cannot be installed
Apparently this problem is due to lack of support of SHA-256 in rpm 4.4.x
Googling suggests
rpmbuild -bs \
--define "_source_filedigest_algorithm md5" \
--define "_binary_filedigest_algorithm md5" \
package.spec
should be used to produce openmpi src rpms and avoid the problem.
Please note that
- rpmbuild works OK on RHEL/CentOS 5.x with openmpi-1.4.4-1.src.rpm and
all previous versions
- rpmbuild works OK on with all openmpi versions with rpm 4.8.x from
RHEL/CentOS 6.x
- this is of course not blocking, since I successfully tested 2 workarounds
1) install package with --nomd5, then rpmbuild -ba <specfile>
2) repackage with "old" rpm:
rpm2cpio to extract spec file + sources tar
rpmbuild -bs <specfile> to produce new src rpm
Then rpmbuild --rebuild is OK
Regards,
Stephane Rouberol
--- Begin Message ---
Hi
Since 1.4.5 openmpi release, it is no longer possible to build openmpi
binary with rpmbuild --rebuild if system rpm package version is 4.4.x,
like in SLES10, SLES11, RHEL/CentOS 5.x.
For instance, on CentOS 5.8 with rpm 4.4.2.3-28.el5_8:
[root@horizon _tmp]# rpmbuild --rebuild openmpi-1.4.5-1.src.rpm
Installing openmpi-1.4.5-1.src.rpm
warning: user jsquyres does not exist - using root
error: unpacking of archive failed on file
/usr/src/redhat/SPECS/openmpi-1.4.5.spec;4fc65c74: cpio: MD5 sum mismatch
error: openmpi-1.4.5-1.src.rpm cannot be installed
Apparently this problem is due to lack of support of SHA-256 in rpm 4.4.x
Googling suggests
rpmbuild -bs \
--define "_source_filedigest_algorithm md5" \
--define "_binary_filedigest_algorithm md5" \
package.spec
should be used to produce openmpi src rpms and avoid the problem.
Please note that
- rpmbuild works OK on RHEL/CentOS 5.x with openmpi-1.4.4-1.src.rpm and
all previous versions
- rpmbuild works OK on with all openmpi versions with rpm 4.8.x from
RHEL/CentOS 6.x
- I successfully tested 2 workarounds
1) install package with --nomd5, then rpmbuild -ba <specfile>
2) repackage with "old" rpm
rpm2cpio to extract spec file + sources tar
rpmbuild -bs <specfile> to produce new src rpm
Then rpmbuild --rebuild is OK
Regards,
Stephane Rouberol
--- End Message ---