Linux From Scratch: Version 5.0-pre2
Prev | Chapter 5. Preparing the LFS system | Next

# Installing Ncurses-5.3

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

## Contents of Ncurses

(Last checked against version 5.2.)

The Ncurses package provides character and terminal handling libraries, including panels and menus.

Ncurses installs the following:

### Program Files

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

### 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

##

## Ncurses Installation Dependencies

(Last checked against version 5.2.)

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

##

## Installation of Ncurses

Fix two minor things:

    patch -Np1 -i ../ncurses-5.3-etip-2.patch
    patch -Np1 -i ../ncurses-5.3-vsscanf.patch

The first patch corrects the `etip.h` header file, and the second patch prevents some compiler warnings being issued on the use of deprecated headers.

Now prepare Ncurses to be compiled:

    ./configure --prefix=/tools --with-shared \
        --without-debug --without-ada --enable-overwrite

The meaning of the configure options:

- `--without-ada`: This tells Ncurses not to build its Ada bindings, even if an Ada compiler is installed on the host. This must be done because once we enter the chroot environment, Ada will no longer be available.

- `--enable-overwrite`: This tells Ncurses to install its header files into `/tools/include` instead of `/tools/include/ncurses` to ensure that other packages can find the Ncurses headers successfully.

Compile the programs and libraries:

    make

Then install them and their documentation:

    make install

Prev | Home | Next
Installing Gettext-0.12.1 | Up | Installing Patch-2.5.4