On Mon, Oct 24, 2011 at 08:32:30AM +0200, John R. Levine wrote:
> >>It sounds to me like the right thing to do is to fix emacs' configuration
> >>so it always uses the base system ncurses whether or not the package
> >>version is there.  Right?
> >
> >maybe/maybe not.  It depends on what emacs needs - whether it only works
> >with either its own termcap module or a conventional termcap library in
> >the system.  Probably its installation documentation tells what's needed.
> 
> If you look at the build log I posted, it's failing because it's trying to 
> link in the system termcap library and failing because ncurses doesn't 
> provide it.

In other places, "-ltermcap" is symlinked to -lncurses

("provide" can be taken in more than one way - the functions are always
available, whether or not the port is written to use them).

A quick look at the emacs 23.3 sources shows various things relevant to
ncurses:
        a) the configure script makes a special check on netbsd to use
           ncurses rather than the termcap library.
        b) it has a very old comment suggesting where to get the terminfo
           or termcap sources (pre-1997).
        c) the NEWS file points out that LIBS_TERMCAP is either terminfo
           or termcap.
        d) src/s/freebsd.h defines LIBS_TERMCAP to -lncurses unless the
           system is before FreeBSD 4.0
        e) src/Makefile.in uses machine.h (in this case derived from the
           previously-mentioned file).

There's enough in the emacs sources to make it pretty clear that a
failure to have emacs find the termcap functions would be a problem
in the emacs port - emacs prefers -lncurses to -ltermcap unless it's
being overridden.

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net

Attachment: pgpMGBWQidJAa.pgp
Description: PGP signature

Reply via email to