8.12. Readline-8.3

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: 17 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

Corrija um problema identificado pelo fluxo de desenvolvimento especificamente para essa versão da readline:

sed -e '270a\
     else\
       chars_avail = 1;'      \
    -e '288i\   result = -1;' \
    -i.orig input.c

Prepare Readline para compilação:

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

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-se à biblioteca libncursesw. Para detalhes, veja-se a seção Bibliotecas Compartilhadas no arquivo README do pacote.

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

Instale o pacote:

make install

Se desejado, instale a documentação:

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

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.3

Descrições Curtas

libhistory

Fornece uma consistente interface de usuário(a) para rechamar linhas do histórico

libreadline

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