Installing Ncurses-5.2

Estimated build time:           1.88 SBU
Estimated required disk space:  22 MB

Installation of Ncurses

This package requires its patch to be applied before you can install it. Make sure it's unpacked before running the installation commands.

Install Ncurses by running the following commands:

patch -Np1 -i ../ncurses-5.2-2.patch &&
./configure --prefix=/usr --with-shared &&
make &&
make install &&
chmod 755 /usr/lib/*.5.2 &&
mv /usr/lib/libncurses.so.5* /lib &&
ln -s libncurses.a /usr/lib/libcurses.a &&
ln -sf ../../lib/libncurses.so.5 /usr/lib/libncurses.so &&
ln -sf ../../lib/libncurses.so.5 /usr/lib/libcurses.so

Command explanations

patch -Np1 -i ../ncurses-5.2-patch: This patch fixes a compile problem with GCC-3.2 because Ncurses uses constructions that are no longer valid in the new C++ standard.

--with-shared: This enables the build of the shared ncurses library files.

chmod 755 *.5.2: Shared libraries should be executable. Ncurses's install routine doesn't set the permissions properly so we do it manually instead.

ln -sf libncurses.a libcurses.a: Some programs try to link using -lcurses instead of -lncurses. This symlink ensures that such programs will link without errors.

Contents of Ncurses

Last checked against version 5.2.

Program Files

captoinfo (link to tic), clear, infocmp, infotocap (link to tic), reset (link to tset), tack, tic, toe, tput and tset.

Descriptions

captoinfo

captoinfo converts a termcap description into a terminfo description.

clear

clear clears the screen if this is possible. It looks in the environment for the terminal type and then in the terminfo database to figure out how to clear the screen.

infocmp

infocmp can be used to compare a binary terminfo entry with other terminfo entries, rewrite a terminfo description to take advantage of the use= terminfo field, or print out a terminfo description from the binary file (term) in a variety of formats (the opposite of what tic does).

infotocap

info to cap converts a terminfo description into a termcap description.

reset

reset sets cooked and echo modes, turns off cbreak and raw modes, turns on new-line translation and resets any unset special characters to their default values before doing terminal initialization the same way as tset.

tack

tack is the terminfo action checker.

tic

tic is the terminfo entry-description compiler. The program translates a terminfo file from source format into the binary format for use with the ncurses library routines. Terminfo files contain information about the capabilities of a terminal.

toe

toe lists all available terminal types by primary name with descriptions.

tput

tput uses the terminfo database to make the values of terminal-dependent capabilities and information available to the shell, to initialize or reset the terminal, or return the long name of the requested terminal type.

tset

tset initializes terminals so they can be used, but it's not widely used anymore. It's provided for 4.4BSD compatibility.

Library Files

libcurses.[a,so] (link to libncurses.[a,so]), libform.[a,so], libform_g.a, libmenu.[a,so], libmenu_g.a, libncurses++.a, libncurses.[a,so], libncurses_g.a, libpanel.[a,so] and libpanel_g.a

libcurses, libncurses++, libncurses, libncurses_g

These libraries are the base of the system and are used to display text (often in a fancy way) on the screen. An example where ncurses is used is in the kernel's "make menuconfig" process.

libform, libform_g

libform is used to implement forms in ncurses.

libmenu, libmenu_g

libmenu is used to implement menus in ncurses.

libpanel, libpanel_g

libpanel is used to implement panels in ncurses.

Ncurses Installation Dependencies

Last checked against version 5.2.

Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, cp, install, ln, mkdir, mv, rm
Gcc: c++, cc1, cc1plus, collect2, cpp0, gcc
Glibc: ldconfig
Grep: egrep, fgrep, grep
Make: make
Gawk: gawk
Sed: sed
Sh-utils: basename, date, echo, expr, hostname, uname
Textutils: cat, sort, tr, wc