LINUX.IE, website of the Irish Linux Users' Group
Tux rules!

   
Home
New Users
Articles
Download
Projects
Community
Vendors

  Print Version
Email to...
 
Archives:


planetILUG

Recent News

News Archive


Join the
ILUG
on FaceBook


Join the
ILUG
on LinkedIn


Join the
ILUG SETI
Group



















 
 :: Mailing Lists

[ILUG] trying to resolve a dependency

[ILUG] trying to resolve a dependency

Conor Daly conor.daly_ilug at cod.homelinux.org
Wed Aug 22 00:16:50 IST 2007


On Tue, Aug 21, 2007 at 12:37:06PM +0100 or so it is rumoured hereabouts, 
Darragh thought:
>  
> 
> I'm trying to install a package that depends on libasound.so.2.  It is
> expecting it to be in /lib however in SuSE it is located in /usr/lib/
> 
> I've tried making sim links to these in /lib/ but still the rpm will not
> install.
 
rpm does not look at the filesystem to check if dependencies are
fulfilled.  It looks in the rpm installed database to see if the
dependent packages are installed. 
 
> Do any of you have any suggestions as to where I'm going wrong with this?
 
You have two options here.

1.  Run rpm with the --nodeps switch telling rpm to install without regard
    for dependencies.  This may work but is generally considered a bad
    idea as it can cause trouble later.

2.  Get the source rpm for the package you want to install, unpack the
    source rpm using rpmbuild, edit the spec file to depend on the Suse
    supplied libasound rpm and build a new binary rpm.  Install this with
    rpm.

This option works something like this:

Package foo depends on package bar.
Your system has package barx installed instead of bar.
You unpack the source rpm for foo.
You edit foo.spec and look for the 'Requires: ' line and change 'bar' to
'barx'
You build the foo binary rpm using this modified spec file.
The newly built package foo now depends on package barx instead.

To build a modified package from a source rpm, do something like:

rpmbuild --rebuild foo.src.rpm

While this is running, hit <CTRL> + C to stop the build.  This is
necessary because rpmbuild will remove the spec file and the build tree
once the rebuild is complete.

Now edit the foo.spec file.  This is found under /usr/src/redhat/SPECS on
a redhat/fedora system, it will likely be somewhere else on Suse.  Change
the 'Requires:' line to refer to the installed package.  Now build the
binary rpm with:

rpmbuild -ba /path/to/foo.spec

The resulting binary rpm will be in /usr/src/redhat/RPMS/...

 
> I'm running SuSE 10.2 with all updates applied. 

On my fedora system, /usr/lib/libasound.so is supplied by
alsa-lib-devel-1.0.14-0.1.rc1.fc6
while /lib/libasound.so.2 is supplied by alsa-lib-1.0.14-0.1.rc1.fc6 .
Are you sure you have both alsa and alsa-devel rpms installed?

Conor
-- 
Conor Daly <conor.daly at cod.homelinux.org>
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/G/S/O d+(-) s:+ a+ C++(+) UL++++ US++ P>++ L+++>++++ E--- W++ !N
PS+ PE Y+ PGP? tv(-) b+++(+) G e+++(*) h-- r+++ z++++ 
------END GEEK CODE BLOCK------
http://www.geekcode.com/ http://www.ebb.org/ungeek/



More information about the ILUG mailing list
Read this without the formatting.
                                                                                                    

 

Hosted by HEAnet


Maintained by the ILUG website team. The aim of Linux.ie is to support and help commercial and private users of Linux in Ireland. You can display ILUG news in your own webpages, read backend information to find out how. Networking services kindly provided by HEAnet, server kindly donated by Dell. Linux is a trademark of Linus Torvalds, used with permission. No penguins were harmed in the production or maintenance of this highly praised website. Looking for the Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!
RSS Version
Powered by Dell