The Ncurses package contains libraries for the terminal-independent handling of character screens.
Approximate build time: 0.6 SBU Required disk space: 27 MB |
Official download location for Ncurses (5.3):
ftp://ftp.gnu.org/gnu/ncurses/
And for the Ncurses Etip Patch:
http://www.linuxfromscratch.org/patches/lfs/cvs/ncurses-5.3-etip-2.patch
For its installation Ncurses depends on: Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep, Make, Sed.
Fix a minor problem related to the etip.h header file:
patch -Np1 -i ../ncurses-5.3-etip-2.patch |
Now prepare Ncurses for compilation:
./configure --prefix=/usr --with-shared --without-debug |
Compile the package:
make |
Install the package:
make install |
Give the Ncurses libraries execute permissions:
chmod 755 /usr/lib/*.5.3 |
And fix a library that shouldn't be executable:
chmod 644 /usr/lib/libncurses++.a |
Move the libraries to the /lib directory, where they're expected to reside:
mv /usr/lib/libncurses.so.5* /lib |
Since the libraries have been moved to /lib, a few symlinks are currently pointing towards non-existing files. Recreate those symlinks:
ln -sf ../../lib/libncurses.so.5 /usr/lib/libncurses.so ln -sf libncurses.so /usr/lib/libcurses.so |
Installed programs: captoinfo (link to tic), clear, infocmp, infotocap (link to tic), reset (link to tset), tack, tic, toe, tput and tset
Installed libraries: libcurses.[a,so] (link to libncurses.[a,so]), libform.[a,so], libmenu.[a,so], libncurses++.a, libncurses.[a,so], libpanel.[a,so]
captoinfo converts a termcap description into a terminfo description.
clear clears the screen, if this is possible.
infocmp compares or prints out terminfo descriptions.
infotocap converts a terminfo description into a termcap description.
reset reinitializes a terminal to its default values.
tack is the terminfo action checker. It is mainly used to test the correctness of an entry in the terminfo database.
tic is the terminfo entry-description compiler. It translates a terminfo file from source format into the binary format needed for the ncurses library routines. A terminfo file contains information on the capabilities of a certain terminal.
toe lists all available terminal types, for each giving its primary name and its description.
tput makes the values of terminal-dependent capabilities available to the shell. It can also be used to reset or initialize a terminal, or report its long name.
tset can be used to initialize terminals.
libncurses* contain functions to display text in many complicated ways on a terminal screen. A good example of the use of these functions is the menu displayed during the kernel's make menuconfig.
libform* contain functions to implement forms.
libmenu* contain functions to implement menus.
libpanel* contain functions to implement panels.