Bug 1705296
Summary: | Cannot build vtk for Python 3.8: nothing provides libmpi.so.12()(64bit) needed by python3-mpi4py-mpich | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Miro Hrončok <mhroncok> |
Component: | mpich | Assignee: | Zbigniew Jędrzejewski-Szmek <zbyszek> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | dakingun, orion, python-sig, tomspur, zbyszek |
Target Milestone: | --- | Keywords: | Reopened |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | mpich-3.2.1-11.fc31 openmpi-4.0.1-2.fc31 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2019-05-08 03:13:56 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1705301 | ||
Bug Blocks: | 1686977 |
Description
Miro Hrončok
2019-05-01 23:09:25 UTC
As a blind shot, I'm now trying to rebuild mpich and openmpi against Python 3.8 first, than rebuild mpi4py, vtk. > nothing provides libmpi.so.12()(64bit) needed by python3-mpi4py-mpich-3.0.1-3.fc31.x86_64
There's no "global" libmpi.so.12, and it only makes sense when qualified with either
'(openmpi-x86_64)' or '(mpich-x86_64)'. Thus any package that has an unadorned libmpi
Requires or Provides is busted.
For python3-mpi4py-openmpi-0:3.0.1-2.fc31.x86_64 which seems to be the latest build in koji,
I see:
$ dnf repoquery --requires python3-mpi4py-openmpi-0:3.0.1-2.fc31.x86_64 | grep libmpi
libmpi.so.40()(64bit)(openmpi-x86_64)
$ dnf repoquery --requires python3-mpi4py-mpich-0:3.0.1-2.fc31.x86_64 | grep libmpi
libmpi.so.12()(64bit)(mpich-x86_64)
and this looks correct. It seems your python3-mpi4py-mpich-3.0.1-3.fc31.x86_64 is wrong
here.
(In reply to Zbigniew Jędrzejewski-Szmek from comment #2) > It seems your > python3-mpi4py-mpich-3.0.1-3.fc31.x86_64 is wrong > here. Indeed. Do you know based on what are those requires generated? mpi.req from rpm-mpi-hooks? For mpi.req to work, mpich and openmpi will have to be rebuilt with python 3.8 first. This is because it looks for library dependencies to add the requires suffix for in $MPI_PYTHON3_SITEARCH as defined in the respective mpi modules which is set at compile time. What about (something like) this: https://src.fedoraproject.org/rpms/mpich/pull-request/1 I think we can guard against this. I opened https://src.fedoraproject.org/rpms/openmpi/pull-request/6 to add openmpi(built-for-python2) = 2.7 openmpi(built-for-python3) = 3.7 mpi4py could than have BuildRequires: openmpi(built-for-python3) = %{python3_version}. PTAL. Hmm, so there are two alternative approaches. Miro's is more self-contained. Let's go with that. Built in rawhide. I've gone with a slightly different version for openmpi, but thanks for the fix. |