2

We are installing a custom rpm which we built using rpmbuild. During the install it fails with a dependency on specific file, in our case specifically libnvidia-ml.so.1:

 Requires: libnvidia-ml.so.1()(64bit)

This is installed at /usr/lib64 but not through the package manager, which cannot change. Is there a way to tell yum where to find this file?

I found nothing obvious in the manual, and LD_LIBRARY_PATH has no effect.

3

Is there a way to tell yum where to find this file?

yum/dnf consults exclusively with your RPM database - there's no way to tell it to take external files into consideration.

Either package this library as an RPM and install it or install whatever you need to install using rpm --nodeps [packages]

1
  • Thanks, not what I was hoping, but now I'll move on. – kabanus Oct 14 '20 at 13:21
1

UPDATE

Your best option would be to provide the .so-File by your custom-build package itself or add another custom-package which provides the shared library.


The following does not work, as available libraries seem to be stored in rpmdb too

In this particular case the dependency is not a file, it's a shared library. It should be possible to manually add the library.

  1. Ensure the path where you added your library is configured for ldconfig

    grep -R /usr/lib64 /etc/ld.so.*
    

    if not, choose a path which is configured, or add the path to the config.

  2. Run ldconfig to recreate the links and cache

    ldconfig -v
    

    you should see your shared library in the output.

Finally you should be able to install the package.

1
  • Does not seem to work for me. Could be that the check done on yum without consulting ld. – kabanus Oct 14 '20 at 13:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.