Bitcoin: configurar: erro: cabeçalhos libdb_cxx ausentes (netbsd)

Criado em 15 set. 2013  ·  35Comentários  ·  Fonte: bitcoin/bitcoin

esses arquivos estão localizados em / usr / pkg / include / db4

samsa% ls / usr / pkg / include / db4
db.h db_185.h db_cxx.h

Bug Build system

Comentários muito úteis

sudo apt-get install libdb ++ - dev resolve meu problema.

Todos 35 comentários

Este caminho já deve ser pesquisado se / usr / pkg / include estiver em seu caminho de inclusão ... Você pode postar um config.log?

O mesmo problema aqui:

CentOS rodando em uma máquina virtual.

localize db_cxx.h
/usr/include/db_cxx.h
/usr/include/db4/db_cxx.h
/usr/share/doc/db4-devel-4.7.25/ref/upgrade.3.0/db_cxx.html
_

Conteúdo do config.log: http://pastebin.com/N1jW9GuF

Ainda é um problema com o último mestre? AFAIK houve mudanças com o novo sistema autotools, então talvez você possa tentar novamente.

O mesmo problema no Ubuntu 13.04.

sudo apt-get install libdb ++ - dev resolve meu problema.

Obviamente você obterá esse erro se o libdb não estiver instalado ... se você ler com atenção, o autor do pôster original tem a biblioteca instalada, mas não é detectada, então não é o mesmo problema.

Como não há libdb ++ no repositório CentOs oficial, fiz o seguinte para corrigir esse problema

  1. Baixe fontes do BerkeleyDb 4.8
  2. Vamos para/ build_unix /
  3. ../dist/configure --prefix = / usr / local --enable-cxx
  4. faço
  5. (como root) make install

Alex, obrigada!

Tenho o mesmo problema: compilei o BDB da fonte, mas não quero instalá-lo. Posso apontar o script de configuração para meu db_cxx.h de alguma forma?

Editar: Eu adicionei a ./src/m4/bitcoin_find_bdb48.m4 :

  bdbdirlist=/path/to/compiled/db-4.8.30.NC/build_unix/build/include

Trabalho.

uma opção melhor seria adicionar uma opção --with-db4 para configurar

Sim, ou BDB_CFLAGS / BDB_LIBS conforme proposto em # 3550

Isso pode ser corrigido fazendo o seguinte:
cd ~/db-4.8.30.NC/build_unix make sudo make install
Verifique se existe uma pasta BerkeleyDB.4.8 em / usr / local
ls /usr/local
em seguida, crie um link simbólico:
ln -s /usr/local/BerkeleyDB.4.8 /usr/include/db4.8
e então faça:
ln -s /usr/local/db4.8/include/* /usr/include ln -s /usr/local/db4.8/lib/* /usr/lib

Qualquer benefício para o link simbólico vs algo como:

echo "/usr/local/lib" > /etc/ld.so.conf.d/db-4.8.30.conf
ldconfig

Ou construa uma biblioteca estática e não compartilhada, para que você não precise instalar a biblioteca no caminho de pesquisa do sistema.

[centos 6.5, versão atual do bitcoin] Parece que compilei o bitcoind com sucesso, porém, quando tento executá-lo, obtenho o seguinte:

./bitcoind: error while loading shared libraries: libdb_cxx-4.8.so: cannot open shared object file: No such file or directory

Tendo seguido as instruções aqui, baixei e compilei o código-fonte 4.8, mas não consigo fazer com que nenhuma pasta BerkeleyDB.4.8 seja gerada em / usr / local.
No entanto, localizei libdb_cxx-4.8.so em db-4.8.30.NC/build_unix/.libs

Se eu simplesmente copiar ou fazer referência a esse arquivo .so nos locais corretos, isso deve resolver o problema?
Usando 'locate libdb_cxx' eu obtenho entradas para 'libdb_cxx.so' e 'libdb_cxx-4.7.so' em / usr / lib64, mas isso é tudo.

Devo apontar bitcoin / src / m4 / bitcoin_find_bdb48.m4, linha: 7 , para
'bdbdirlist = / root / berkeley-db / db-4.8.30.NC / build_unix / .libs'? (o diretório db-4.8.30.NC/build_unix/build/include mencionado acima não existe para mim).

Copiar libdb_cxx-4.8.so do / usr / lib64 não parece resolver o problema.

Minhas desculpas antecipadamente por minha compreensão limitada. Ainda estou me familiarizando com várias camadas de abstração envolvidas aqui. Desde já, obrigado. Postagem completa aqui: https://bitcointalk.org/index.php?topic=588032

dlio, você tentou 'make install' de 'db-4.8.30.NC/build_unix/'? Deve colocar muitos dos arquivos em seus devidos lugares, se bem me lembro.

Obrigado pela resposta rápida coincapsig.

Eu tentei o seguinte método de Alexander conforme o acima:
`1. Baixe fontes do BerkeleyDb 4.8

  1. Vá para / build_unix /
  2. ../dist/configure --prefix = / usr / local --enable-cxx
  3. faço
  4. (como root) make install`

mas fazer um locate libdb_cxx ainda mostra apenas ibdb_cxx.so e libdb_cxx-4.7.so como estando em / usr / lib64 /

Eu sinto sua dor dilo, eu tenho exatamente o mesmo problema nesta compilação:
Linux versão 2.6.32-431.11.2.el6.x86_64 ([email protected]) (gcc versão 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)) # 1 SMP Ter 25 de março 19:59:55 UTC de 2014

Aqui está a saída das últimas 2 linhas antes da falha de ./configure.

verificando cabeçalhos Berkeley DB C ++ ... não
configurar: erro: cabeçalhos libdb_cxx ausentes

Eu também fiz como Alex disse acima e não funcionou para mim também.

Para aqueles que estão criando libcxx do zero, você pode tentar seguir as etapas atualizadas aqui?

https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md#berkeley -db

Isso evita a necessidade de instalação global.

@akstunt .. Eu tive o mesmo problema no Ubuntu 12.04:

checking for Berkeley DB C++ headers... no
configure: error: libdb_cxx headers missing

Veja como eu consertei:

sudo apt-get install libdb4.8++-dev

Em seguida, basta executar ./configure novamente.

Este mesmo problema persiste. Debian 7.9 em fevereiro de 2016.

Isso resolveu o problema, mais ou menos:
apt-get install libdb ++ - dev

O novo erro consequente foi este:
configure: erro: Berkeley DB encontrado diferente de 4.8, necessário para carteiras portáteis (--with-incompatible-bdb para ignorar)

Adicionando a sugestão acima para configurar a compilação permitida, mas este aviso apareceu:
configure: AVISO: Berkeley DB encontrado diferente de 4.8; carteiras abertas por esta compilação não serão portáteis!

@MichaelBrenden meu ubuntu wily tem os mesmos problemas e uso
./configure --with-incompatible-bdb resolve os problemas.
ref: http : //brianchan.us/home/2013/11/26/installing-bitcoin-in-ubuntu/

no Fedora 24 (e provavelmente em outro redhat como)
resolveu com
dnf install libdb4-cxx-devel

Estou com dor de cabeça e não resolvi esse problema

@chenluyong o que você tentou e qual foi o resultado?

@ronaldpetty O problema parece ter sido resolvido, mas não gravei

instalar libdb-devel

No Ubuntu 16.04, aqui está como resolvi isso.

sudo add-apt-repository ppa: bitcoin / bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8 ++ - dev

No centos 7.4 e libdb instalado 、 libdb-devel 、 libdb-cxx 、 libdb-cxx-devel, mas a versão é muito alta. Então, procurei uma versão anterior em https://www.rpmfind.net.
Use rpm para instalar

rpm -ivh libdb4-4.8.30-13.el7.x86_64.rpm
rpm -ivh libdb4-devel-4.8.30-13.el7.x86_64.rpm
rpm -ivh libdb4-cxx-4.8.30-13.el7.x86_64.rpm 
rpm -ivh libdb4-cxx-devel-4.8.30-13.el7.x86_64.rpm

Então ./configure passou.

@yuexiahandao
sua sugestão me ajudou.thx.

aqui está meu env:

[root<strong i="8">@localhost</strong> bitcoin]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root<strong i="9">@localhost</strong> bitcoin]# uname -rm
3.10.0-327.el7.x86_64 x86_64
[root<strong i="10">@localhost</strong> bitcoin]# 

aqui está o problema:

[root<strong i="14">@localhost</strong> bitcoin]# ./configure 
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
...
...
checking for MSG_NOSIGNAL... yes
checking for Berkeley DB C++ headers... no
configure: error: libdb_cxx headers missing
[root<strong i="15">@localhost</strong> bitcoin]#

por último, a resolução é:

wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libdb4-4.8.30-13.el7.x86_64.rpm
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libdb4-devel-4.8.30-13.el7.x86_64.rpm
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libdb4-cxx-4.8.30-13.el7.x86_64.rpm
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libdb4-cxx-devel-4.8.30-13.el7.x86_64.rpm

e

rpm -ivh libdb4-4.8.30-13.el7.x86_64.rpm
rpm -ivh libdb4-devel-4.8.30-13.el7.x86_64.rpm
rpm -ivh libdb4-cxx-4.8.30-13.el7.x86_64.rpm 
rpm -ivh libdb4-cxx-devel-4.8.30-13.el7.x86_64.rpm​

como mencionado no arquivo build-linux, você precisa instalar berkleydb específico
sudo add-apt-repository ppa: bitcoin / bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8 ++ - dev

Pode ser que ajude alguém:

Tive o problema de configurar o erro: erro: cabeçalhos libdb_cxx ausentes

Meu problema estava relacionado ao passo
sudo update-transactions --config x86_64-w64-mingw32-g ++ # Defina a opção do compilador mingw32 g ++ padrão para posix.

Durante a primeira instalação, fiz tudo como nas instruções, mas por algum motivo não tive a opção de inserir um número para selecionar o mingw (posix) apropriado. Talvez eu simplesmente não tenha visto. Eu vi este comentário "# Defina a opção do compilador mingw32 g ++ padrão para posix." mas pensei que pode ser este comando fará tudo o que for necessário.

Mas durante a segunda instalação limpa eu prestei mais atenção e selecionei um apropriado com posix e depois com make HOST = x86_64-w64-mingw32 demorou muito mais tempo e tudo ficou ok e eu não tive esse erro.

Trata-se de janelas de compilação de instalação oficial com WSL ubuntu 16

Tente instalar o apt install libdb ++ - dev. Funciona para mim no Ubuntu 16.04.

este código corrige para mim:

    wget http://download.oracle.com/berkeley-db/db-4.8.30.zip
    unzip db-4.8.30.zip
    cd db-4.8.30
    cd build_unix/
    ../dist/configure --prefix=/usr/local --enable-cxx
    make
    make install

(fonte https://cryptoandcoffee.com/mining-gems/install-berkeley-4-8-db-libs-on-ubuntu-16-04/)

Quando tento executar ./bitcoind, gere esta mensagem de erro: ./bitcoind: error while loading shared libraries: libdb_cxx-4.8.so: cannot open shared object file: No such file or directory .
Mas resolvi esse problema de maneira fácil.
Você só precisa verificar se libdb_cxx-4.8.so existe em /usr/local/lib/ e /usr/local/lib64/ (alguém disse que é necessário verificar /usr/local/src/db-xx/build_unix/.lib/ também), então não encontrei libdb_cxx-4.8 .so na lib64, então eu faço sudo ln -sf /usr/local/BerkeleyDB.4.8/lib/libdb_cxx-4.8.so /usr/lib64/libdb_cxx-4.8.so , funciona !!!!
Espero que possa ajudá-lo.

Esta página foi útil?
0 / 5 - 0 avaliações