LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Fedora (https://www.linuxquestions.org/questions/fedora-35/)
-   -   Fedora 28, 'Nothing provides libmpi.so.20()(64bit)' with openmpi and rpm-mpi-hooks installed (https://www.linuxquestions.org/questions/fedora-35/fedora-28-nothing-provides-libmpi-so-20-64bit-with-openmpi-and-rpm-mpi-hooks-installed-4175636043/)

rcx11 08-09-2018 02:05 PM

Fedora 28, 'Nothing provides libmpi.so.20()(64bit)' with openmpi and rpm-mpi-hooks installed
 
As the title says, on Fedora 28, I'm receiving errors from rpm and dnf won't install my package because libmpi.so.20()(64bit). I've verified the package is in /usr/lib64/openmpi/lib and PATH includes it. OpenMPI and rpm-mpi-hooks are installed. The complete .spec file is below

Code:

# spec file for Bertini v1.6

# define _topdir /home/rcx11/Bertini
%define name Bertini
%define release 0
%define version 1.6
# define buildroot %{_topdir}/%{name}-%{version}-root

BuildRoot:        /var/tmp/%{name}-%{version}-root
Summary:        Bertini - Numerical Algebraic Geometry
License:        Proprietary
Name:                %{name}
Version:        %{version}
Release:        %{release}
Source:                %{name}-%{version}.tar.gz
Prefix:                /usr/local
Group:                Education

Requires:        bison
Requires:        flex
Requires:        gmp
Requires:        mpfr
Requries:        openmpi
Requires:        openmpi-devel
Requires:        rpm-mpi-hooks

BuildRequires:        gmp
BuildRequires:        flex
BuildRequires:        bison
BuildRequires:        mpfr
BuildRequires:        openmpi
BuildRequires:        openmpi-devel
BuildRequires:        rpm-mpi-hooks

%description
Software for solving numerical solutions to polynomial systems using Homotopy continuation.
Bertini is a general-purpose solver, written in C, that was created for research about polynomial continuation.

 Finds isolated solutions using total-degree start systems, multihomogeneous-degree start systems, and also user defined homotopies.
 Implements parameter continuation for families of systems, such as the inverse kinematics of six-revolute serial-link arms, or the forward kinematics of Stewart-Gough parallel-link robots.
 Adaptive multiprecision implemented for finding isolated solutions and for the numerical irreducible decomposition.
 Treats positive-dimensional solutions by computing witness sets.
 Has automatic differentiation which preserves the straightline quality of an input system.
 Uses homogenization to accurately compute solutions "at infinity."
 Provides endgames to accurately compute singular roots.
 Allows for subfunctions.
 Allows for witness set manipulation via both sampling and membership testing.
 Accepts underdetermined, exactly determined, and overdetermined systems (i.e., the number of variables and equations do not have to be equal).

%prep
%setup -q

%build
./configure
make

%install
make install prefix=$RPM_BUILD_ROOT/usr/local

%files
%defattr(-,root,root)
/usr/local/bin/bertini
/usr/local/include/bertini.h
/usr/local/include/cascade.h
/usr/local/include/diff.h
/usr/local/include/dimbydim.h
/usr/local/include/eqbyeq.h
/usr/local/include/localdim.h
/usr/local/include/parallel.h
/usr/local/include/pos_dim.h
/usr/local/include/ppParse.h
/usr/local/include/regeneration.h
/usr/local/include/regen_pos_dim.h
/usr/lib/debug/usr/local/bin/bertini-parallel-1.6-0.x86_64.debug
/usr/lib/debug/usr/local/bin/bertini-serial-1.6-0.x86_64.debug
/usr/lib/debug/usr/local/lib/libbertini-parallel.so.0.0.0-1.6-0.x86_64.debug
/usr/lib/debug/usr/local/lib/libbertini-serial.so.0.0.0-1.6-0.x86_64.debug
/usr/local/bin/bertini-parallel
/usr/local/bin/bertini-serial
/usr/local/lib/libbertini-parallel.a
/usr/local/lib/libbertini-parallel.la
/usr/local/lib/libbertini-parallel.so
/usr/local/lib/libbertini-parallel.so.0
/usr/local/lib/libbertini-parallel.so.0.0.0
/usr/local/lib/libbertini-serial.a
/usr/local/lib/libbertini-serial.la
/usr/local/lib/libbertini-serial.so
/usr/local/lib/libbertini-serial.so.0
/usr/local/lib/libbertini-serial.so.0.0.0


# %doc %attr(0444,root,root)


frankbell 08-10-2018 10:51 PM

You could try pbone.

I have used it successfully in the past, but it was a long time ago.

rcx11 08-11-2018 12:15 PM

pbone indicates that libmpi.so.20()(64bit) is provided by the standard OpenMPI package, which I have installed and is part of the Requires tags in the spec file. I forgot to mention before that I've verified that the file libmpi.so.20 is installed and located at /usr/lib64/openmpi/lib.

frankbell 08-11-2018 08:14 PM

I'm completely out of my element here, but I'm going to take a shot in the dark. Try created a symlink to the file directly in /usr/lib64.

If it doesn't work, you can delete the symlink. If it does work, you can buy me a bottle of Scotch:).


All times are GMT -5. The time now is 10:47 AM.