8.12. Readline-8.2.13

O pacote Readline é um conjunto de bibliotecas que oferecem recursos de edição de linha de comando e de histórico.

Tempo aproximado de construção: menos que 0,1 UPC
Espaço em disco exigido: 16 MB

8.12.1. Instalação do Readline

Reinstalar Readline causará as bibliotecas antigas serem movidas para <nomebiblioteca>.old. Ao tempo em que isso normalmente não seja um problema, em alguns casos isso pode deflagrar um defeito de vinculação no ldconfig. Isso pode ser evitado emitindo-se os seguintes dois seds:

sed -i '/MV.*old/d' Makefile.in
sed -i '/{OLDSUFF}/c:' support/shlib-install

Evite caminhos de pesquisa de biblioteca de codificação rígida (rpath) dentro das bibliotecas compartilhadas. Esse pacote não precisa do rpath para uma instalação no local padrão, e o rpath às vezes pode causar efeitos indesejados ou até mesmo problemas de segurança:

sed -i 's/-Wl,-rpath,[^ ]*//' support/shobj-conf

Prepare Readline para compilação:

./configure --prefix=/usr    \
            --disable-static \
            --with-curses    \
            --docdir=/usr/share/doc/readline-8.2.13

O significado da nova opção do configure:

--with-curses

Essa opção diz ao Readline que ela pode encontrar as funções da biblioteca termcap na biblioteca curses, não uma biblioteca termcap separada. Isso gerará o arquivo readline.pc correto.

Compile o pacote:

make SHLIB_LIBS="-lncursesw"

O significado da opção do make:

SHLIB_LIBS="-lncursesw"

Essa opção força o Readline a vincular contra a biblioteca libncursesw.

Esse pacote não vem com uma suíte de teste.

Instale o pacote:

make SHLIB_LIBS="-lncursesw" install

Se desejado, instale a documentação:

install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.2.13

8.12.2. Conteúdo do Readline

Bibliotecas instaladas: libhistory.so e libreadline.so
Diretórios instalados: /usr/include/readline e /usr/share/doc/readline-8.2.13

Descrições Curtas

libhistory

Fornece uma consistente interface de usuária(o) para re-chamar linhas do histórico

libreadline

Fornece um conjunto de comandos para manipular texto digitado em uma sessão interativa de um aplicativo