Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I try to make a package of a program which is linked to such library (output from ldd):

libwx_baseu-2.8.so.0 => /usr/lib64/wx-2.8-wxcontainer/libwx_baseu-2.8.so.0

Pretty straightforward, right? But when I make a package of this program (with rpmbuild) and then try to install it, rpm complains about missing library (this one above):

error: Failed dependencies:

    libwx_baseu-2.8.so.0()(64bit) 
    libwx_baseu-2.8.so.0(WXU_2.8)(64bit)

My guess is, rpmbuild set the dependency for the main lib directory, i.e. /usr/lib64.

Question -- how to fix this issue (ok, one would be forced install, but I would like to avoid it)? I.e. how to build rpm so the dependencies would set for the wx-2.8-wxcontainer subdirectory (for this library)?

openSUSE 11.4, if this matters.

Edit

I can install such package with --nodeps which forces installation, and after that install program works perfectly. So clearly, rpm or rpmbuild has issues, not the system itself.

share|improve this question
add comment

2 Answers 2

I think, that you are mixing files and packages.

The fact that the library exists on your disk doesn't mean that it can be used to resolve a dependency. For that, there has to be a package that provides this library.

On the other hand, for dependency resolving, the file actually doesn't even have to exist. Only the fact, that some installed package provides it should be enough.

share|improve this answer
1  
Rpm does use file names as dependencies (unlike dpkg), so I don't think macias's question actually indicates a mix-up. –  Gilles May 30 '11 at 21:22
    
"The fact that the library exists on your disk doesn't mean that it can be used to resolve a dependency. For that, there has to be a package that provides this library." Not true -- you can set dependency upon package or raw file. I have (because rpmbuild did it) only dependencies for raw files. "On the other hand, for dependency resolving, the file actually doesn't even have to exist. Only the fact, that some installed package provides it should be enough." True, but it is not my case. –  greenoldman May 31 '11 at 4:52
add comment
up vote 1 down vote accepted

I think this is limitation or bug in current rpm/rpmbuild versions. I reported this issue so I think in a way question is answered:

https://bugzilla.novell.com/show_bug.cgi?id=697943

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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