Bug 1471512 - openmpi-devel package does not properly install pkg-config files
openmpi-devel package does not properly install pkg-config files
Status: ASSIGNED
Product: Fedora
Classification: Fedora
Component: openmpi (Show other bugs)
25
Unspecified Linux
unspecified Severity unspecified
: ---
: ---
Assigned To: Doug Ledford
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2017-07-16 10:31 EDT by Gabriel Scherer
Modified: 2017-07-19 20:57 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Gabriel Scherer 2017-07-16 10:31:09 EDT
The openmpi-devel package does not properly install pkg-config files, making it difficult to compile mpi-using software without fiddling with fedora-specific paths.

I am using Fedora 25 with the openmpi-devel package in version 1.10.5.

How to reproduce: after installing `openmpi-devel`, `pkg-config --cflags ompi` prints:

> Package ompi was not found in the pkg-config search path.
> Perhaps you should add the directory containing `ompi.pc'
> to the PKG_CONFIG_PATH environment variable
> No package 'ompi' found

However, notice that `rpm -ql openmpi-devel | grep pkgconfig` returns the following, which suggests that pkg-config integration *was* planned for this package:

> /usr/lib64/openmpi/lib/pkgconfig
> /usr/lib64/openmpi/lib/pkgconfig/ompi-c.pc
> /usr/lib64/openmpi/lib/pkgconfig/ompi-cxx.pc
> /usr/lib64/openmpi/lib/pkgconfig/ompi-f77.pc
> /usr/lib64/openmpi/lib/pkgconfig/ompi-f90.pc
> /usr/lib64/openmpi/lib/pkgconfig/ompi-fort.pc
> /usr/lib64/openmpi/lib/pkgconfig/ompi.pc
> /usr/lib64/openmpi/lib/pkgconfig/orte.pc

People on the web document ugly workaround for the lack of pkg-config support. See http://www.cybaea.net/journal/2009/06/12/R-tips-Installing-Rmpi-on-Fedora-Linux/ for example.

Note: this seems closely related to the bug 221343, back in 2007-2008, which reported that no "openmpi" package was available, and was closed on a claim that Fedora 8 fixed the issue. There is no "openmpi" package on my machine (try with `pkg-config --cflags openmpi`), and upstream seems to use "ompi" as the pkg-config name now:

  https://github.com/open-mpi/ompi/blob/8558def8580e5681868b8b49ede57a6870b80075/ompi/tools/wrappers/ompi.pc.in
Comment 1 Orion Poplawski 2017-07-19 20:57:26 EDT
Well, you're expected to load the module first:

# module load mpi/openmpi-x86_64
# pkg-config --cflags ompi
-pthread -I/usr/include/openmpi-x86_64 -I/usr/include/openmpi-x86_64/

But it is true that since the pkgconfig modules are named "ompi*" and "orte", there is no conflict with the other MPI implementations, and we could have them in the main pkgconfig directory.

Note You need to log in before you can comment on or make changes to this bug.