Bug 1264887 - mpich: Needs to install a dynamic linker hints file for sub-packages
Summary: mpich: Needs to install a dynamic linker hints file for sub-packages
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: mpich
Version: 22
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Zbigniew Jędrzejewski-Szmek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-09-21 12:20 UTC by Neil Darlow
Modified: 2015-11-16 17:39 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-11-16 16:37:22 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Neil Darlow 2015-09-21 12:20:14 UTC
Description of problem:
mpich (and sub-packages linked with it) store library files in /usr/lib64/mpich/lib which the dynamic linker knows nothing about.


Version-Release number of selected component (if applicable):
mpich-3.1.4-2.fc22


How reproducible:
Every time


Steps to Reproduce:
1. Install an application requiring a mpich linked library e.g. gmsh
2. Execute the application and notice libraries are not resolved e.g. libscotch.so.0 for gmsh


Actual results:
Applications linked against mpich (or a derived library e.g. ptscotch-mpich) fail due to their libraries not being found.


Expected results:
Application should launch.


Additional info:
I created a file /etc/ld.so.conf.d/mpich-x86_64.conf with contents:
/usr/lib64/mpich/lib
then ran ldconfig and the appropriate libraries are now found and gmsh runs.

Comment 1 Zbigniew Jędrzejewski-Szmek 2015-11-16 16:37:22 UTC
To get access to mpi-implementation-specific directories, please do

module load mpi/mpich-x86_64

This (amongst other things) sets LD_LIBRARY_PATH.

You can also do this permanently, by installing mpich-autoload.

Comment 2 Neil Darlow 2015-11-16 17:36:22 UTC
So, let me get this right!

mpich installs libraries in /usr/lib/mpich/lib and does nothing to make those libraries known to the dynamic linker.

Applications which make use of those libraries then fail to start because the libraries cannot be found.

By some *magic* the end-user is supposed to know to run some obscure command or install another package which is not a dependency of mpich to allow the application to run.

How the heck is that NOTABUG? If a package installs a GUI application it should run out-of-the-box not need manual intervention.

Jeesh!

Comment 3 Zbigniew Jędrzejewski-Szmek 2015-11-16 17:39:36 UTC
There is more than one mpi implementation. They conflict with one another. Therefore what you propose (always enabling the libraries) is not possible in general. modulefiles are a standard mechanism to achieve runtime switching of optional components like this.


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