本パッケージの詳細は 「Ncurses の構成」を参照してください。
Ncurses パッケージは、端末に依存しない、文字ベースのスクリーン制御を行うライブラリを提供します。
以下のコマンドを実行して、ビルドホスト上に「tic」プログラムをビルドします。
mkdir build pushd build ../configure AWK=gawk make -C include make -C progs tic popd
Ncurses をコンパイルするための準備をします。
./configure --prefix=/usr                \
            --host=$LFS_TGT              \
            --build=$(./config.guess)    \
            --mandir=/usr/share/man      \
            --with-manpage-format=normal \
            --with-shared                \
            --without-normal             \
            --with-cxx-shared            \
            --without-debug              \
            --without-ada                \
            --disable-stripping          \
            AWK=gawk
        configure オプションの意味
--with-manpage-format=normal
            本パラメーターは Ncurses が圧縮された man ページをインストールしないようにします。 ホストディストリビューションそのものが圧縮 man ページを利用していると、同じようになってしまうからです。
--with-shared
            これは Ncurses において共有 C ライブラリをビルドしインストールします。
--without-normal
            これは Ncurses においてスタティックな C ライブラリのビルドおよびインストールを行わないようにします。
--without-debug
            これは Ncurses においてデバッグライブラリのビルドおよびインストールを行わないようにします。
--with-cxx-shared
            これは Ncurses において共有 C++ バインディングをビルドしインストールします。 同時にスタティックな C++ バインディングのビルドおよびインストールは行わないようにします。
--without-ada
            このオプションは Ncurses に対して Ada コンパイラーのサポート機能をビルドしないよう指示します。 この機能はホストシステムでは提供されているかもしれませんが、chroot 環境に入ってしまうと利用できなくなります。
--disable-stripping
            本スイッチは、ホスト上の strip を、ビルドシステムが利用しないようにします。 クロスコンパイルされたプログラムに対して、ホスト上のツールを使うと、ビルド失敗の原因になります。
AWK=gawk
            本スイッチはホスト上の mawk を使ったビルドが行われないようにするものです。 mawk のバージョンによっては、本パッケージのビルドに失敗するものがあるためです。
パッケージをコンパイルします。
make
パッケージをインストールします。
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
ln -sv libncursesw.so $LFS/usr/lib/libncurses.so
sed -e 's/^#if.*XOPEN.*$/#if 1/' \
    -i $LFS/usr/include/curses.h
        install オプションの意味
TIC_PATH=$(pwd)/build/progs/tic
            ビルドマシン上において、作り出したばかりの tic のパスを示すことが必要です。 こうすることで terminal データベースがエラーなく生成できることになります。
                これから作り出すパッケージの中で、わずかですが libncurses.so を必要としているものがあります。 このシンボリックリンクは
                libncursesw.so に代わるものとして生成します。
              
                ヘッダーファイル curses.h では Ncurses
                データ構造に関するさまざまな定義が行われています。
                プリプロセッサーマクロ定義を変えることによって、データ構造定義を二つの異なるセットとして定義しているものがあります。
                つまり 8 ビット定義は libncurses.so
                と互換性があり、ワイドキャラクター定義は libncursesw.so と互換性があります。 これまで libncurses.so の代わりとして libncursesw.so
                を利用してきていることから、ヘッダーファイルを修正して、libncursesw.so
                と互換性を持つワイドキャラクターデータ構造を常に用いるものとします。
              
本パッケージの詳細は 「Ncurses の構成」を参照してください。