Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
03-16-2006, 06:42 PM
|
#1
|
Member
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Fedora Core 8-10
Posts: 61
Rep:
|
How to change where rpm looks for library linking
Hello all,
I am currently having some problems installing mp3 support for xmms on FC4. I have the rpm xmms-mp3-1.2.10-16.i386.rpm, but trying to install I get the following failed dependencies:
error: Failed dependencies:
xmms is needed by xmms-mp3-1.2.10-16.i386
libxmms.so.1 is needed by xmms-mp3-1.2.10-16.i386
However, I am fairly certain I have both of these files (I definitely have xmms!), as a quick locate showed that both of these files are in the following locations:
/usr/local/lib/libxmms.so.1
/usr/share/xmms
So, my problem seems to be getting rpm to "look" in these locations to find the files it requires. Is it possible to do this? A quick scan of the man page didn't seem to offer much (that doesn't mean it's not there, just that I don't know what to look for).
Any help is greatly appreciated,
|
|
|
03-16-2006, 09:24 PM
|
#2
|
Senior Member
Registered: Sep 2003
Posts: 3,171
Rep: 
|
This is a fairly common problem. The easiest way to deal with it is just to symlink from the directory the app is looking in for the library to the library.
Most probably, xmms is looking in /usr/lib while your physical lib is in /usr/local/lib.
So, as root, you cd into /usr/lib and do an ln -s /usr/local/lib/libxmms.so.1 libxmms.so.1
And that will fix you up.
Beyond that, if it is a failed dependency on an rpm install, you should force the installation, requiring it to install regardless of dependencies. There are files called .pc files (look, for instance, in /usr/local/lib/pkgconfig) which contain information about installed packages which is used by configure and by RPM installers. If configure or RPM look in one place (/usr/lib/pkgconfig, for instance) while the .pc file is in another place (/usr/local/lib/pkgconfig, for instance) then this is the kind of problem you have. Force the installation, and it will work.
You might also try symlinking the .pc files from one location to the other.
|
|
|
03-17-2006, 12:39 AM
|
#3
|
Member
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Fedora Core 8-10
Posts: 61
Original Poster
Rep:
|
jiml8,
Thanks for your reply. I got everything working by using the --nodeps option with rpm, ie;
rpm -Uvh --nodeps xmms-mp3-1.2.10-16.i386.rpm
xmms is now happily playing mp3s (although I prefer to use ogg, a lot of web radio uses mp3 streaming).
Still, is this a fix that will work "all" the time, or was I just lucky? I tried the symlink option, but that didn't change anything. Is there a way to find out where rpm looks, rather than assuming it checks /usr/lib? Although I got my original problem fixed, I don't feel like we have resolved the issue. Any input from anyone would be great.
Thanks,
|
|
|
03-17-2006, 08:47 AM
|
#4
|
Senior Member
Registered: Sep 2003
Posts: 3,171
Rep: 
|
Actually, more than likely the symlink did fix you up, but you still had to do the nodeps because the relevant .rc files are not where your RPM expected them, hence the dependency failure. Providing the symlink enabled xmms to find the libraries it needed, even though the particular compile started by looking in the wrong place.
Also, I did not specifically tell you to use rpm --nodeps because I was unsure what packaging program you were using in your distro.
Package installation is the single weakest point of Linux, and you have just seen why. Different compiles and different distros will put the same information in different places, and Linux is not good at finding all those possible places in a consistent fashion.
Before opting for a nodeps installation, you need to be certain that the dependency really is satisfied, regardless of what the package manager thinks, and then you need to make sure that the necessary libraries are symlinked to where they are needed; the dependency failure can be taken as a fairly good indicator that the package will refuse to run when installed unless you take this step.
|
|
|
All times are GMT -5. The time now is 07:11 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|