Bug 228891 - File /usr/lib/libncurses.so.5 is not owned by any package
Summary: File /usr/lib/libncurses.so.5 is not owned by any package
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: ncurses
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Miroslav Lichvar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 253125 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-02-15 19:26 UTC by Robert Scheck
Modified: 2007-12-06 17:46 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-12-06 17:46:59 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Robert Scheck 2007-02-15 19:26:16 UTC
Description of problem:
tux:~ # ls -la /usr/lib/libncurses.so.5
lrwxrwxrwx 1 root root 12 15. Feb 20:01 /usr/lib/libncurses.so.5 -> libcurses.so
tux:~ # 

tux:~ # rpm -qf /usr/lib/libncurses.so.5
file /usr/lib/libncurses.so.5 is not owned by any package
tux:~ # 

tux:~ # rm -f /usr/lib/libncurses.so.5
tux:~ # 

tux:~ # ls -la /usr/lib/libncurses.so.5
ls: cannot access /usr/lib/libncurses.so.5: No such file or directory
tux:~ # 

tux:~ # rpm -Uvh --force ncurses-5.6-4.20070210.fc7.i386.rpm
Vorbereiten...              ########################################### [100%]
   1:ncurses                ########################################### [100%]
tux:~ # 

tux:~ # ls -la /usr/lib/libncurses.so.5
lrwxrwxrwx 1 root root 12 15. Feb 20:15 /usr/lib/libncurses.so.5 -> libcurses.so
tux:~ # 

tux:~ # rpm -qf /usr/lib/libncurses.so.5
file /usr/lib/libncurses.so.5 is not owned by any package
tux:~ #

Version-Release number of selected component (if applicable):
ncurses-5.6-4.20070210

How reproducible:
Everytime, see above.

Actual results:
File /usr/lib/libncurses.so.5 is not owned by any package.

Expected results:
The file /usr/lib/libncurses.so.5 should be owned by ncurses or the file should 
not exist/created by any installation.

Comment 1 Miroslav Lichvar 2007-02-16 11:50:53 UTC
ldconfig creates the file, not sure why. libtinfo is very similar, but ldconfig
doesn't create a symlink for it.

Comment 2 Jakub Jelinek 2007-02-18 17:22:16 UTC
What matters is the /usr/{lib,lib64}/libcurses.so -> libncurses.so symlink.
As the real library it ultimately points to isn't in the same directory and it
has different name, ldconfig will create the symlink for it.  libncurses.so.5
(the name of the symlink) is the SONAME of the library libcurses.so points to.
The easiest is probably not make libcurses.so as a symlink, but instead
a linker script.
rm -f $RPM_BUILD_ROOT%{_libdir}/libcurses.so
echo 'INPUT (-lncurses)' > $RPM_BUILD_ROOT%{_libdir}/libcurses.so
Untested, but should work right.

Comment 3 Miroslav Lichvar 2007-02-19 13:38:36 UTC
Thanks. Fixed in ncurses-5.6-5.20070217.fc7.

Comment 4 John Ellson 2007-08-17 12:48:05 UTC
This "fix" breaks gdb and emacs on x86_64.  See BZ#229737, BZ#253125

This bug is in today's rawhide, please do not assume that its been fixed.

This bug should be re-opened.



root@ontap:lib64# ls -l *curses*
-rw-r--r-- 1 root root     17 2007-08-13 08:21 libcurses.so
lrwxrwxrwx 1 root root     18 2007-08-16 18:40 libcursesw.so -> libncursesw.so.5.6
lrwxrwxrwx 1 root root     27 2007-08-16 18:40 libncurses.so ->
../../lib64/libncurses.so.5
lrwxrwxrwx 1 root root     12 2007-08-17 08:41 libncurses.so.5 -> libcurses.so
lrwxrwxrwx 1 root root     16 2007-08-16 18:40 libncursesw.so -> libncursesw.so.5
lrwxrwxrwx 1 root root     18 2007-08-16 18:40 libncursesw.so.5 ->
libncursesw.so.5.6
-rwxr-xr-x 1 root root 183264 2007-08-13 08:21 libncursesw.so.5.6


Comment 5 Robert Scheck 2007-08-17 12:50:22 UTC
John, let's reopen if you think so.

Comment 6 Miroslav Lichvar 2007-08-17 12:56:54 UTC
*** Bug 253125 has been marked as a duplicate of this bug. ***

Comment 7 Miroslav Lichvar 2007-08-17 12:59:42 UTC
Please remove the /usr/lib64/libncurses.so.5 symlink and everything will work again.

This happens only when upgrading from rawhide packages from Nov 2006-Feb 2007.
Upgrading ncurses from F6 to F7 and from F7 to current rawhide is ok.

Comment 8 Robert Scheck 2007-08-17 13:04:33 UTC
Finally we need to have a packaged /usr/lib[64]/libncurses.so.5, otherwise 
ldconfig will create the symlink manually - which is unpackaged.

Comment 9 John Ellson 2007-08-17 13:08:19 UTC
OK.  Comment #7 works for me.

I think the bug should still stay open so that others can find it and ultimately
find this manual fix.

This fix should be done directly from the ncurses-devel rpm to cover users
that upgrade incrementally.   Or a fix based on Comment #8.   Then this bug can
be closed.

Comment 10 Miroslav Lichvar 2007-08-17 13:24:12 UTC
The library and the symlink were moved to /lib64. Removing the wrong symlink in
post scriptlet is not an option since bash depends on ncurses.

I can keep this bug open for a while, but it's really WONTFIX.

Actually it's not a bug, it's a feature, it will catch ncurses binaries that
have "RPATH /usr/lib64" encoded in them ;).

Comment 11 Robert Scheck 2007-08-17 13:27:39 UTC
This is NEVER NEVER NEVER WONTFIX, because it violates against the Fedora 
Packaging Guidelines.

Comment 12 Miroslav Lichvar 2007-08-17 13:30:24 UTC
Hm, which guideline are you referring to?

Comment 13 John Ellson 2007-08-17 13:46:23 UTC
Re Comment #10, are you saying that this is a bug in gdb and emacs?   Have bugs
been opened against them?   Do you really want such a poorly documented
"feature" in ncurses to be taking on this role?

Comment 14 Jan Kratochvil 2007-08-17 13:48:51 UTC
(In reply to comment #12)
> Hm, which guideline are you referring to?

http://fedoraproject.org/wiki/Packaging/Guidelines#head-a1dfb5f46bf4098841e31a75d833e6e1b3e72544

(In reply to comment #13)
> Re Comment #10, are you saying that this is a bug in gdb and emacs?
> Have bugs been opened against them?

GDB has no such Bug opened but it is now being rebuilt without RPATH.


Comment 15 Miroslav Lichvar 2007-08-22 14:52:41 UTC
Filed bug #253872 for emacs.

Comment 16 Miroslav Lichvar 2007-12-06 13:37:59 UTC
Closing, the bug from the original report was fixed in ncurses-5.6-5.20070217.fc7.

Comment 17 Robert Scheck 2007-12-06 17:36:00 UTC
Yes, but the maintainer reverted it again somewhen.

Comment 18 Miroslav Lichvar 2007-12-06 17:46:59 UTC
No, it's still fixed.

ldconfig doesn't create the symlink /usr/lib/libncurses.so.5 -> libcurses.so. It
was fixed by putting "INPUT(-lncurses)" string in /usr/lib/libcurses.so.



Note You need to log in before you can comment on or make changes to this bug.