Estimated build time: 6 minutes Estimated required disk space: 29 MB |
Install Ncurses by running the following commands:
./configure --prefix=/usr --libdir=/lib \ --with-shared --disable-termcap && make && make install && cd /lib && mv *.a /usr/lib && chmod 755 *.5.2 && cd /usr/lib && ln -sf libncurses.a libcurses.a && ln -sf ../../lib/libncurses.so && ln -sf ../../lib/libcurses.so && ln -sf ../../lib/libform.so && ln -sf ../../lib/libpanel.so && ln -sf ../../lib/libmenu.so |
--with-shared: This enables the build of the shared ncurses library files.
--disable-termcap: Disabled the compilation of termcap fall back support.
cd /lib && mv *.a /usr/lib : This moves all of the static ncurses library files from /lib to /usr/lib. /lib should only contain the shared files which are essential to the system when /usr may not be mounted.
chmod 755 *.5.2: Shared libraries should be executable. Ncurses 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.
ln -sf ../../lib/libncurses.so etc: These symlinks are created so the linker will use the dynamic versions of these libraries instead of the static ones, which happens if the linker can't find the dynamic versions.
captoinfo (link to tic), clear, infocmp, infotocap (link to tic), reset (link to tset), tack, tic, toe, tput and tset.
captoinfo converts a termcap description into a terminfo description.
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 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).
info to cap converts a terminfo description into a termcap description.
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 is the terminfo action checker.
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 lists all available terminal types by primary name with descriptions.
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 initializes terminals so they can be used, but it's not widely used anymore. It's provided for 4.4BSD compatibility.
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
The libraries that make up the Ncurses library 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. The libncurses libraries are the base of the system.
libform is used to implement forms in ncurses.
libmenu is used to implement menus in ncurses.
libpanel is used to implement panels in ncurses.
Ncurses-5.2 needs the following to be installed:
bash: sh
binutils: ar, as, ld
diffutils: cmp
fileutils: chmod, cp, ln, mkdir, mv, rm
gcc: c++, gcc
grep: egrep, fgrep, grep
make: make
mawk: mawk
sed: sed
sh-utils: basename, date, echo, expr, test, uname
textutils: cat, sort, tr, wc