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

Reply via email to