[Bug 697943] New: RPM: does not look at all system directories for librariers
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c0 Summary: RPM: does not look at all system directories for librariers Classification: openSUSE Product: openSUSE 11.4 Version: Final Platform: x86-64 OS/Version: Other Status: NEW Severity: Minor Priority: P5 - None Component: Basesystem AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: bluedzins@wp.pl QAContact: qa@suse.de Found By: --- Blocker: --- Remarks: 1) I don't know if this is a bug or more a wish, so I set severity to minor 2) despite I say "rpm" I am not sure if it is a problem with rpmbuild or rpm In short I could say, that if you have a program which require a library (FILE, not a package) ldd executed against this program scans all valid directories for libraries in order to resolve the correct dependencies. If you build rpm for this program, and you would like to install it, rpm will look only in MAIN directories (like /usr/lib and /usr/lib64), ommiting the rest of the VALID system directories. And you will get into troubles if the needed library is placed in those "rest" directories -- out of scope of rpm, but valid for other system tools. Steps: 1. make a library 2. build a rpm for it with valid placement, but not in main library directories 3. install such package 4. make a program which uses this library -- e.g. myprogram 5. check the library resolution -- ldd myprogram 6. output should be ok 7. build rpm for this program, don't set any requirements 8. rpmbuild will recognize the need for the library (FILE) and will add requirement for it 9. install this package 10. error --> library NOT found, despite it exists and its placement is resolved with ldd Workaround: 11. install package with --nodeps option 12. check installed program with ldd -- it should be OK 13. run installed program -- it runs fine So -- the limiting part is rpm (or rpmbuild). Despite those tools, the system works fine. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c zj jia <zjjia@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |zjjia@novell.com AssignedTo|bnc-team-screening@forge.pr |mls@novell.com |ovo.novell.com | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c1 Michael Schröder <mls@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |CLOSED Resolution| |INVALID --- Comment #1 from Michael Schröder <mls@novell.com> 2011-06-14 10:19:06 UTC --- Rpm does not search system directories at all. It scans all the files included in a package to generate the provides/requires. So if you package a library in a non-standard place, the resulting rpm will include the library in its provide list nevertheless. If the dep doesn't show up, somethings wrong with the package build. Do you have an example of this in the build service? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c2 --- Comment #2 from Maciej Pilichowski <bluedzins@wp.pl> 2011-06-14 11:33:59 UTC --- Yes, for the example wxWidgets. If you just install the libraries you get errors on rpms which require libraries, the _files_. So either you force installation, or you additionally install meta packages for wx which fix the issue. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c3 --- Comment #3 from Michael Schröder <mls@novell.com> 2011-06-14 11:38:41 UTC --- What project in the build service is that? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c4 --- Comment #4 from Maciej Pilichowski <bluedzins@wp.pl> 2011-06-14 14:43:34 UTC --- I don't know, but the repo for version 2.8.12 is here: http://download.opensuse.org/repositories/X11:/wxWidgets/openSUSE_11.4/ (pretty odd it is not present in Tumbleweed) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c5 --- Comment #5 from Michael Schröder <mls@novell.com> 2011-06-15 10:12:04 UTC --- But it seems to work for the wx packages: The libwx_base-2_8-0-wxcontainer package provides "libwx_base-2.8.so.0", but the library is in /usr/lib/wx-2.8-wxcontainer. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c6 --- Comment #6 from Maciej Pilichowski <bluedzins@wp.pl> 2011-06-15 10:24:00 UTC --- In reality you always have to install wx rpms in pairs -- one with real library, the other package which simply says "the library was installed". Example: libwx_baseu_net-2_8-0-wxcontainer-2.8.12-3.1.x86_64 libwx_baseu_net-2_8-0-compat-lib-wxcontainer-2.8.12-3.1.x86_64 Without the second rpm would not know, the wx library is present at all (but ldd would know). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=697943 https://bugzilla.novell.com/show_bug.cgi?id=697943#c7 --- Comment #7 from Michael Schröder <mls@novell.com> 2011-06-15 12:23:15 UTC --- That makes no sense. As the compat-lib package doesn't contain any library file, it should not provide any library sonames at all. The wx package seem to use their own provide/require generators. Please ask the project maintainers about the their setup and what they want to achieve with it. (I have no clue why those "compat" packages exist at all, why can't the main packages just also provide the "old" names?) Anyway, nothing wrong with rpm. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com