I have a package (.rpm) on CentOS 6.5 that requires a .so file, which I also have on my machine. When I attempt to install the package I get an error stating unresolved dependencies regarding the .so file. I have tried placing the .so file in the same directory, in /lib/, in /usr/lib/, and setting the path of LD_LIBRARY_PATH to /usr/lib/, but regardless the package does not resolve the dependency, how can I make the .so available to the package I am installing?

  • Likely it's looking for another RPM which provides said .so file. Can you provide the full command and complete output, including error? – Patrick Jul 15 '14 at 16:19
  • @Patrick the machine I'm using is isolated, but I am calling rpm -i [package name], and getting error: Failed Dependencies: [.so] is required by [package name] – Centimane Jul 15 '14 at 16:26
  • Are you sure the target RPM's architecture is compatible with the .so file you have on your system? – Joseph R. Jul 15 '14 at 16:29
  • @JosephR. it is possible that it is off, do you know how I would go about checking? – Centimane Jul 15 '14 at 16:33
  • The file command can usually identify the architecture of your .so file. As for the RPM you're trying to install, the name should give you a clue about the architecture. x86_64 and amd64 usually refer to 64-bit RPMs and things like i386, i686,... usually refer to 32-bit RPMs. – Joseph R. Jul 15 '14 at 17:02

What is the output of yum provides /full/path/to/file.so ? As first comment suggested, the so might be installed outside rpm db (e.g. manually compiled or copied). Some non-official rpms are poorly packaged, and rely on dependencies in the developer's machine. It would help if you could provide the package name and source.

If the .so is present and you know it satisfies the requirements (version wise etc.) you can install the package with rpm --nodeps. However that is not a recommended practice.

As per @Centimane's comment, if the .so file is provided by an rpm, and that rpm is not installed on your system, it might be a good idea (depending on versions and making sure this would not break currently installed apps) to install the .so with the rpm found in the output of the yum provides command.

yum provides /full/path/to/file.so
yum install <package name found by previous command>

Or even directly

yum install /full/path/to/file.so
  • So revisiting this from long ago, I would recommend adding to your answer installing the package that yum provides [file] reports with yum install [file]. – Centimane Nov 22 '17 at 16:48

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.