install custom rpm package: failed dependencies

arnaud gaboury arnaud.gaboury at gmail.com
Thu Oct 8 17:10:17 UTC 2015


I wrote a .spec file to build a pacakge with many shared librairies
installed by Intel parallel studio 2016.

There is no Fedora package for Intel, but the installation script
install many .rpm packages, and all are correctly listed when running
$ dnf list

Building my package goes fine. I am no left with one issue when I want
to install it.

# dnf install R-core-3.2.2-intel.fc22.1.x86_64
Error: nothing provides libimf.so()(64bit) needed by
libRmath-3.2.2-intel.fc22.1.x86_64.
nothing provides libifcoremt.so.5()(64bit) needed by
R-core-3.2.2-intel.fc22.1.x86_64.
nothing provides libifcoremt.so.5()(64bit) needed by
R-core-3.2.2-intel.fc22.1.x86_64.
nothing provides libifcoremt.so.5()(64bit) needed by
R-core-3.2.2-intel.fc22.1.x86_64.
nothing provides libimf.so()(64bit) needed by
libRmath-3.2.2-intel.fc22.1.x86_64.
nothing provides libimf.so()(64bit) needed by
libRmath-3.2.2-intel.fc22.1.x86_64.
nothing provides libifcoremt.so.5()(64bit) needed by
R-core-3.2.2-intel.fc22.1.x86_64.
nothing provides libifcoremt.so.5()(64bit) needed by
R-core-3.2.2-intel.fc22.1.x86_64.
nothing provides libimf.so()(64bit) needed by libRmath-3.2.2-intel.fc22.1.x86_64

 % rpm -i --test R-core-3.2.2-intel.fc22.1.x86_64
error: Failed dependencies:
libifcoremt.so.5()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libifport.so.5()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libimf.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libintlc.so.5()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libiomp5.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libiomp5.so(VERSION)(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libirc.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libirng.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libmkl_rt.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64
libsvml.so()(64bit) is needed by R-core-3.2.2-intel.fc22.1.x86_64

---------------------------------------------------------------------------------------

All these shared objects are installed on my system and are part of
the Intel mega package.

I thought writing this in my spec file was enough. Example:
BuildRequire: inetl-ifort-l-ps-109

this package has been installed by Intel parallel studio and provides
libifport.so.5.:
-----------------------------------------------------------------------------
% dnf info intel-ifort-l-ps-109-16.0.0-109.x86_64

Last metadata expiration check performed 12 days, 6:08:27 ago on Sat
Sep 26 12:51:00 2015.
Installed Packages
Name        : intel-ifort-l-ps-109
Arch        : x86_64
Epoch       : 0
Version     : 16.0.0
Release     : 109
Size        : 26 M
Repo        : @System
Summary     : Intel(R) Fortran Compiler 16.0 for Linux*
License     : Intel Copyright 1999-2015
Description : Intel(R) Fortran Compiler 16.0 for Linux*
-----------------------------------------------------------------------------------

How can I solve this issue properly? Is there anything I can do at
build time or add in the spec file?
I can fo course # rpm -i --nodeps MyPackage, but I would prefer to
avoid and write an academic spec file.
-- 

google.com/+arnaudgabourygabx


More information about the devel mailing list