Por que não consigo encontrar a biblioteca termcap quando eu construo o gdb?

9

make e, em seguida, falhou com:

configure: error: nenhuma biblioteca termcap foi encontrada , mas a termcap lib está lá, por que não consegue encontrá-la?

checking for library containing zlibVersion... -lz
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for library containing dlgetmodinfo... no
checking for iconv... yes
checking for iconv declaration... install-shextern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
checking for library containing waddstr... no
configure: WARNING: no enhanced curses library found; disabling TUI
checking for library containing tgetent... no
configure: error: no termcap library found
make[1]: *** [configure-gdb] Error 1
make[1]: Leaving directory '/var/lib/gforge/chroot/home/users/mirror/tmp/gdb-7.5'
make: *** [all] Error 2

Eu configuro o gdb com:

[mirror@hugemeow gdb-7.5]$ ./configure --libdir=/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/


checking where to find the target readelf... host tool
checking where to find the target strip... host tool
checking where to find the target windres... host tool
checking where to find the target windmc... host tool
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether -fkeep-inline-functions is supported... yes
configure: creating ./config.status
config.status: creating Makefile

que a biblioteca tempcap está lá quando configurada para o gdb :

[mirror@hugemeow gdb-7.5]$ ls /var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/
libtermcap.a
[mirror@hugemeow gdb-7.5]$ ls /var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/include/
termcap.h

Editar 1 : falhou, mesmo com a opção --includedir e --libdir ...

[mirror@hugemeow gdb-7.5]$ ./configure --includedir=/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/include/  --libdir=/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/
make
    checking for library containing tgetent... no
configure: error: no termcap library found
make[1]: *** [configure-gdb] Error 1
make[1]: Leaving directory '/var/lib/gforge/chroot/home/users/mirror/tmp/gdb-7.5'
make: *** [all] Error 2

Editar 2 : Agora eu construo como Patrice Tisserand disse, mas também falhei, com mensagem de erro diferente da seguinte forma.

[mirror @ hugemeow gdb-7.5] $ CFLAGS="- / var / lib / gforge / chroot / home / users / mirror / ins / ins-gdb / incluir /" LDFLAGS="- L / var / lib / gforge / chroot / home / users / mirror / ins / ins-gdb / lib / "./configure & & fazer

make[1]: Entering directory '/var/lib/gforge/chroot/home/users/mirror/tmp/gdb-7.5'
Configuring in ./intl
configure: loading cache ./config.cache
configure: error: 'CFLAGS' has changed since the previous run:
configure:   former value:  '-g -O2'
configure:   current value: '-I/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/include/'
configure: error: 'LDFLAGS' has changed since the previous run:
configure:   former value:  ' '
configure:   current value: ' -L/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/'
configure: error: in '/var/lib/gforge/chroot/home/users/mirror/tmp/gdb-7.5/intl':
configure: error: changes in the environment can compromise the build
configure: error: run 'make distclean' and/or 'rm ./config.cache' and start over
make[1]: *** [configure-intl] Error 1
make[1]: Leaving directory '/var/lib/gforge/chroot/home/users/mirror/tmp/gdb-7.5'
make: *** [all] Error 2
    
por hugemeow 18.10.2012 / 09:00

3 respostas

18

Instalar o libncurses irá resolver o seu problema. Tente isto se você estiver usando qualquer sistema operacional Debian: sudo apt-get install libncurses5-dev .

    
por 19.03.2013 / 18:12
3
./configure --includedir=/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/include/  --libdir=/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/

- includedir e - libdir são opções para diretórios de instalação .

Para usar bibliotecas de outros diretórios, você pode tentar fazer o seguinte:

CFLAGS="-I/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/include/" LDFLAGS="-L/var/lib/gforge/chroot/home/users/mirror/ins/ins-gdb/lib/" ./configure 
    
por 18.10.2012 / 10:26
1

Isso foi extremamente útil: link

This example shows how to succeed when you find a target-native termcap library is missing (cross building is somewhat different here -- use ./configure --help when in doubt):

cd ~/work/cross/gdb/downloads
wget ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
cd ..
tar xvzf downloads/termcap-1.3.1.tar.gz
mkdir -p ~/work/cross/gdb/build/termcap
cd ~/work/cross/gdb/build/termcap

export CC=powerpc-7450-linux-gnu-gcc
export RANLIB=powerpc-7450-linux-gnu-ranlib
../../termcap-1.3.1/configure --host=powerpc-7450-linux-gnu --prefix=$HOME/work/cross/termcap
make
make install
    
por 05.08.2014 / 22:33