lfs/chapter06/ncurses.xml
Manuel Canales Esparcia c6cb3aa2f1 HEAD: Retagged the Contents of ... sections.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3621 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
2004-05-17 21:55:01 +00:00

203 lines
6.8 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-system-ncurses" xreflabel="Ncurses" role="wrap">
<title>Ncurses-&ncurses-version;</title>
<?dbhtml filename="ncurses.html"?>
<indexterm zone="ch-system-ncurses"><primary sortas="a-Ncurses">Ncurses</primary></indexterm>
<sect2 role="package"><title/>
<para>The Ncurses package contains libraries for terminal-independent
handling of character screens.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem><seg>0.6 SBU</seg><seg>27 MB</seg></seglistitem>
</segmentedlist>
<segmentedlist>
<segtitle>Ncurses installation depends on</segtitle>
<seglistitem><seg>Bash, Binutils, Coreutils, Diffutils,
Gawk, GCC, Glibc, Grep, Make, Sed</seg></seglistitem>
</segmentedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Ncurses</title>
<para>Prepare Ncurses for compilation:</para>
<screen><userinput>./configure --prefix=/usr --with-shared --without-debug</userinput></screen>
<para>Compile the package:</para>
<screen><userinput>make</userinput></screen>
<para>Install the package:</para>
<screen><userinput>make install</userinput></screen>
<para>Give the Ncurses libraries execute permissions:</para>
<screen><userinput>chmod 755 /usr/lib/*.&ncurses-version;</userinput></screen>
<para>Now fix a library that shouldn't be executable:</para>
<screen><userinput>chmod 644 /usr/lib/libncurses++.a</userinput></screen>
<para>Move the libraries to the <filename>/lib</filename> directory,
where they're expected to reside:</para>
<screen><userinput>mv /usr/lib/libncurses.so.5* /lib</userinput></screen>
<para>Because the libraries have been moved, a few symlinks are pointing to
non-existent files. Recreate those symlinks:</para>
<screen><userinput>ln -sf ../../lib/libncurses.so.5 /usr/lib/libncurses.so
ln -sf libncurses.so /usr/lib/libcurses.so</userinput></screen>
</sect2>
<sect2 id="contents-ncurses" role="content"><title>Contents of Ncurses</title>
<segmentedlist>
<segtitle>Installed programs</segtitle>
<segtitle>Installed libraries</segtitle>
<seglistitem><seg>captoinfo (link to tic), clear, infocmp, infotocap (link to tic),
reset (link to tset), tack, tic, toe, tput and tset</seg>
<seg>libcurses.[a,so] (link to libncurses.[a,so]), libform.[a,so], libmenu.[a,so],
libncurses++.a, libncurses.[a,so], libpanel.[a,so]</seg></seglistitem>
</segmentedlist>
<variablelist><title>Short descriptions</title>
<varlistentry>
<term id="captoinfo"><command>captoinfo</command></term>
<listitem>
<indexterm zone="ch-system-ncurses captoinfo"><primary sortas="b-captoinfo">captoinfo</primary></indexterm>
<para>converts a termcap description into a terminfo description.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="clear"><command>clear</command></term>
<listitem>
<indexterm zone="ch-system-ncurses clear"><primary sortas="b-clear">clear</primary></indexterm>
<para>clears the screen, if this is possible.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="infocmp"><command>infocmp</command></term>
<listitem>
<indexterm zone="ch-system-ncurses infocmp"><primary sortas="b-infocmp">infocmp</primary></indexterm>
<para>compares or prints out terminfo descriptions.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="infotocap"><command>infotocap</command></term>
<listitem>
<indexterm zone="ch-system-ncurses infotocap"><primary sortas="b-infotocap">infotocap</primary></indexterm>
<para>converts a terminfo description into a termcap description.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="reset"><command>reset</command></term>
<listitem>
<indexterm zone="ch-system-ncurses reset"><primary sortas="b-reset">reset</primary></indexterm>
<para>reinitializes a terminal to its default values.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="tack"><command>tack</command></term>
<listitem>
<indexterm zone="ch-system-ncurses tack"><primary sortas="b-tack">tack</primary></indexterm>
<para>is the terminfo action checker. It is mainly
used to test the correctness of an entry in the terminfo database.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="tic"><command>tic</command></term>
<listitem>
<indexterm zone="ch-system-ncurses tic"><primary sortas="b-tic">tic</primary></indexterm>
<para>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.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="toe"><command>toe</command></term>
<listitem>
<indexterm zone="ch-system-ncurses toe"><primary sortas="b-toe">toe</primary></indexterm>
<para>lists all available terminal types, for each
giving its primary name and its description.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="tput"><command>tput</command></term>
<listitem>
<indexterm zone="ch-system-ncurses tput"><primary sortas="b-tput">tput</primary></indexterm>
<para>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.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="tset"><command>tset</command></term>
<listitem>
<indexterm zone="ch-system-ncurses tset"><primary sortas="b-tset">tset</primary></indexterm>
<para>can be used to initialize terminals.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="libncurses"><command>libncurses*</command></term>
<listitem>
<indexterm zone="ch-system-ncurses libncurses"><primary sortas="c-libncurses*">libncurses*</primary></indexterm>
<para>contains 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.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="libform"><command>libform*</command></term>
<listitem>
<indexterm zone="ch-system-ncurses libform"><primary sortas="c-libform*">libform*</primary></indexterm>
<para>contains functions to implement forms.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="libmenu"><command>libmenu*</command></term>
<listitem>
<indexterm zone="ch-system-ncurses libmenu"><primary sortas="c-libmenu*">libmenu*</primary></indexterm>
<para>contains functions to implement menus.</para>
</listitem>
</varlistentry>
<varlistentry>
<term id="libpanel"><command>libpanel*</command></term>
<listitem>
<indexterm zone="ch-system-ncurses libpanel"><primary sortas="c-libpanel*">libpanel*</primary></indexterm>
<para>contains functions to implement panels.</para>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>