Red Hat Bugzilla – Bug 10754
ncurses shared library has wrong version number
Last modified: 2008-05-01 11:37:55 EDT
A binary program compiled against ncurses 4.2 on RedHat 6.1 and run
on RedHat 6.2 which uses ncurses 5.0 but which has the shared library
misnamed as ncurses.so.4.0 can segv due to ABI changes in the library
which mean that version 4.2 and version 5.0 are not binary compatible as
is incorrectly stated in the changelog given in the spec file from the source
The problem is the definition of the TERMTYPE structure, and in
particular the Strings member which is now a pointer to an array of
strings instead of being an array of strings. Hence referencing a
member of that structure (such as acs_chars) in a binary built against
the old library and run against the new one will fail.
Note that http://www.gnu.org/software/ncurses/ncurses.html states
quite clearly that the major version number was changed because of
changes which invalidated existing shared libraries.
This will be fixed in 7.0.
The change affects only one function that isn't being used frequently
(it's used nowhere in the distribution, powertools and contrib/net),
so it's not necessary to release update packages for 6.2.