Detalhes acerca deste pacote estão localizados em Seção 8.28.2, “Conteúdo do Ncurses.”
O pacote Ncurses contém bibliotecas para manuseio independente de terminal das telas de caracteres .
Primeiro, assegure que gawk é encontrado primeiro durante a configuração:
sed -i s/mawk// configure
Então, execute os seguintes comandos para construir o aplicativo “tic” no anfitrião de construção:
mkdir build pushd build ../configure make -C include make -C progs tic popd
Prepare o Ncurses para compilação:
./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 \ --enable-widec
O significado das novas opções do configure:
--with-manpage-format=normal
Isso evita que o Ncurses instale páginas de manual comprimidas, o que possivelmente aconteça se a própria distribuição anfitriã tiver páginas de manual comprimidas.
--with-shared
Isso faz com que o Ncurses construa e instale bibliotecas C compartilhadas.
--without-normal
Isso evita que o Ncurses construa e instale bibliotecas C estáticas.
--without-debug
Isso evita que o Ncurses construa e instale bibliotecas de depuração.
--with-cxx-shared
Isso faz com que o Ncurses construa e instale vínculos C++ compartilhados. Também evita a construção e instalação de vínculos C++ estáticos.
--without-ada
Isso assegura que o Ncurses não construa suporte para o compilador Ada, o qual possivelmente esteja presente no anfitrião, porém não estará disponível até que nós entremos no ambiente chroot.
--disable-stripping
Essa chave impede o sistema de construção de usar o aplicativo strip oriundo do anfitrião. Usar ferramentas do anfitrião em aplicativos compilados cruzadamente pode causar falha.
--enable-widec
Essa chave faz com que bibliotecas de caracteres largos (por
exemplo, libncursesw.so.6.4
)
sejam construídas em vez das normais (por exemplo,
libncurses.so.6.4
). Essas
bibliotecas de caracteres largos são utilizáveis tanto em
locales de múltiplos bytes quanto em tradicionais de oito
(08) bits, enquanto bibliotecas normais funcionam
adequadamente só em locales de oito (08) bits. Bibliotecas de
caracteres largos e normais são compatíveis em fonte, mas não
são compatíveis em binário.
Compile o pacote:
make
Instale o pacote:
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so
O significado das opções do install:
TIC_PATH=$(pwd)/build/progs/tic
Nós precisamos passar o caminho do recém construído aplicativo tic que executa na máquina de construção, de forma que a base de dados de terminal possa ser criada sem erros.
A biblioteca libncurses.so
é
necessária para uns poucos pacotes que nós construiremos
breve. Nós criamos esse pequeno script vinculador, pois isso
é o que é feito no Capítulo 8.
Detalhes acerca deste pacote estão localizados em Seção 8.28.2, “Conteúdo do Ncurses.”