terminfo missing?

Jeremy Chadwick freebsd at jdc.parodius.com
Mon Feb 1 18:42:54 UTC 2010


On Mon, Feb 01, 2010 at 07:13:48PM +0100, Ivan Voras wrote:
> This has bugged me on a couple of machines but I've always
> attributed it to some misconfiguration of mine: running curses-like
> programs under "screen" (i.e. in virtual screens) fails with
> messages like "terminal entry not found". For example, "less" does
> this, and "vim" complains with this:
> 
> E558: Terminal entry not found in terminfo
> 'screen' not known. Available builtin terminals are:
>     builtin_ansi
>     builtin_xterm
>     builtin_iris-ansi
>     builtin_dumb
> defaulting to 'ansi'
> 
> Looking at terminfo(5) it looks like terminfo should be located at
> /usr/share/misc/terminfo/ but I have no such directory here. There
> is a /usr/share/misc/termcap file.
> 
> This machine is relatively fresh, only a source-based update was
> performed from 8.0-R to 8.0-STABLE, so I don't think there is some
> package that does this.
> 
> Can someone enlight me about what is happening here?

Don't let the message from vim fool you; it says "Terminal entry not
found in terminfo", but what it's really trying to tell you is "not
found in termcap".  It'll say "terminfo" no matter what.

FreeBSD uses termcap, not terminfo.

The definition for the "screen" termcap entry is in
/usr/share/misc/termcap, which is what /etc/termcap is symlinked to.
You should also have a /usr/share/misc/termcap.db file.

I've no issues using vim, sade, sysinstall, less, etc. under screen on
RELENG_7 or RELENG_8 machines.  This is with TERM=screen as well (no
dotfiles or environment settings overriding it).  Do you have some sort
of library on your machine which is trumping the ones in /usr/lib?

Relevant linking:

/usr/local/bin/vim:
        libm.so.5 => /lib/libm.so.5 (0x30781000)
        libncurses.so.8 => /lib/libncurses.so.8 (0x308a0000)
        libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x309ea000)
        libc.so.7 => /lib/libc.so.7 (0x30be3000)

/usr/bin/less:
        libncurses.so.8 => /lib/libncurses.so.8 (0x3065e000)
        libc.so.7 => /lib/libc.so.7 (0x307a8000)

-- 
| Jeremy Chadwick                                   jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |



More information about the freebsd-stable mailing list