[oe] ncurses 5.7 doesn't build libtermcap anymore?

Enrico Scholz enrico.scholz at sigma-chemnitz.de
Sun Aug 29 10:31:30 UTC 2010


Mike Westerhof <mike at mwester.net> writes:

> I've been working on some recent problems that popped up in the SlugOS
> feeds; one that appeared recently is that asterisk no longer builds;
> configure complains about -ltermcap,

When I remembed an irc discussion, asterisk (tested on version 1.6.0.28)
is able to use -ltinfo from recent ncurses.  afair, the explicit

  --with-termcap=${STAGING_EXECPREFIXDIR}

must be removed from the recipe too.


> and investigation shows that indeed, libtermcap is missing.  

libtermcap is dead and unmaintained since 1996 (!).  Recent software
should be able to use -ltinfo instead of -ltermcap.


> It seems that the new ncurses recipe (5.7) no longer builds it for
> some reason.  I think the same problem is the root cause for the
> failure of js to build as well.

Recent js-1.8.0rc1 brings in the -ltermcap by

| ifdef JS_READLINE
| ...
| PROG_LIBS += -lreadline -ltermcap

libreadline itself should be linked against the correct termcap library
(ltinfo or ltermcap) so that this '-ltermcap' can be removed.

Accordingly Makefile.ref, the '-DUSE_TERMCAP' option requires manual
addition of '-ltermcap' to LDFLAGS (which is btw usually the wrong
variable for extra libraries).

So, when somebody revives the js recipe (last package specific changes
were in Feb 2007) and sets '-DUSE_TERMCAP', (s)he should link against
'-ltinfo'.


> So I guess the first question is if this is intentional or not?  If it
> is, then I guess I'll modify the asterisk recipe to remove the
> dependency and submit that patch.  Otherwise, well, I guess I could
> attempt to debug and fix the ncurses recipe, but it looks a bit, um,
> "non-trivial" so any advice would be appreciated.

We could provide like Fedora a linkerscript 'libtermcap.so' with

| INPUT(-ltinfo)

content.  But I am not sure whether -ltinfo is really 100% compatible
to -ltermcap and if such a workaround would break autodetection which
checks whether termcap or tinfo is to be used.


Enrico




More information about the Openembedded-devel mailing list