Thank you Orion!
This was the decisive bit of missing information.
The bookkeeping issue is now gone, but it did mean that I had to add a
fair bit of reworking for my original package to get all the paths
relinked properly. One of my mpi-dependent libraries seems to be
getting installed OK, but must have something else blocking it. Getting
a duplicate-files packaging warning and the lib file is not showing up
in the final package. Might still take a bit, but at least your
explanation help restore some sanity.
Cheers, and many thanks!
/mark
On 2020-10-31 03:39, Orion Poplawski wrote:
They are generated by the rpm requires/dependency generators in
rpm-mpi-hooks, so that needs to be in the buildroot when the package is
built.
The libraries/binaries also need to be installed into the
%{_libdir}/openmpi/{bin,share,lib} hierarchy.
HTH,
Orion
On 10/30/20 2:30 PM, Mark Olesen wrote:
I need to follow up on my own post - still haven't figured out how the
RPM requires are done.
In the first step, I've completely stripped out my package so that it
only builds a simple library (pretty much an mpi "hello world"), and
an executable to call it. Wrapped them in a spec file, and these also
only create a dependency on
libmpi.so.40()(64bit)
For comparison, I've rebuilt libptscotch (mpich and openmpi) using
sources and specs pulled from the srpm. These rpms build correctly
*and* they also have the expected dependency on
libmpi.so.40()(64bit)(openmpi-x86_64)
I don't understand how the rpm dependency check on the built libraries
works in one case, but not in the other.
The only thing I can imagine is that for the ptscotch build, it uses
mpicc instead of gcc + libraries. But even so, how is that information
propagate through the libraries?
Any hints, even a polite "rtfm" with the name of the docs I am missing
would be very welcome at this point.
Thanks,
/mark
On 2020-10-22 13:47, Mark Olesen wrote:
This will presumably also affect Fedora, but need to recheck.
We are experiencing some very odd build behaviour using copr to
compile for various Fedora and CentOS/RedHat versions
(https://copr.fedorainfracloud.org/coprs/openfoam/openfoam).
The built package on centos8 is automatically given the requirement
- libmpi.so.40()(64bit)
But the openmpi package actually provides
- libmpi.so.40()(64bit)(openmpi-x86_64)
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
--
Dr Mark OLESEN
Principal Engineer, ESI-OpenCFD
Engineering System International GmbH | Einsteinring 24 | 85609 Munich
Mob. +49 171 9710 149
www.openfoam.com | www.esi-group.com | mark.olesen@xxxxxxxxxxxxx
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx