Não foi possível localizar o BerkeleyDB

9

Estou tentando instalar um minerador bitcoin-repote-rpc de [http://www.mediafire.com/file/ve608cl5mk1ka3l/bitcoin-remote-rpc-20110227-src.zip] no meu laptop rodando no quantal do ubuntu. Eu preciso usar o CMake para construir o projeto. Eu encontrei alguns erros e consegui resolvê-los instalando as dependências. Agora o último bit que não consigo resolver é essa mensagem de erro

CMake Error at CMakeLists.txt:112 (MESSAGE):
  Could not locate BerkeleyDB

Eu gostaria de saber como resolver esse problema. Agradecendo antecipadamente.

Quando eu corro

  dpkg -l 'libdb*' | grep '^ii'

Eu recebo os seguintes pacotes já instalados

 ii  libdb5.1:i386                             5.1.29-5ubuntu2                            i386         Berkeley v5.1 Database Libraries [runtime]
ii  libdbus-1-3:i386                          1.6.4-1ubuntu4                             i386         simple interprocess messaging system (library)
ii  libdbus-glib-1-2:i386                     0.100-1ubuntu0.1                           i386         simple interprocess messaging system (GLib-based shared library)
ii  libdbusmenu-glib4:i386                    12.10.2-0ubuntu1                           i386         library for passing menus over DBus
ii  libdbusmenu-gtk3-4:i386                   12.10.2-0ubuntu1                           i386         library for passing menus over DBus - GTK+ version
ii  libdbusmenu-gtk4:i386                     12.10.2-0ubuntu1                           i386         library for passing menus over DBus - GTK+ version
ii  libdbusmenu-qt2:i386                      0.9.2-0ubuntu3                             i386         Qt implementation of the DBusMenu protocol

E esta é a parte do CMakelists.txt que parece estar produzindo o erro

# Use BDB local module
FIND_PACKAGE(BerkeleyDB)

IF(DB_INCLUDE_DIR)
    INCLUDE_DIRECTORIES(${DB_INCLUDE_DIR})
ELSE(DB_INCLUDE_DIR)
    MESSAGE(FATAL_ERROR "Could not locate BerkeleyDB")
ENDIF(DB_INCLUDE_DIR)
    
por Nadeem Muhammad 02.04.2013 / 18:10

1 resposta

12

Pode haver dois motivos:

  1. (Simples) Você tem libdb-dev e libdb ++ - dev instalado?
  2. Se a resposta à primeira pergunta for sim, a razão comum para o fracasso das compilações é o suporte inexistente para a versão mais recente do Berkeley DB. Você precisará editar o CMakeLists.txt e manipulá-lo para aceitar libdb-5.1.so ou libdb ++ - 5.1.so no caso de C ++.
por oerdnj 02.04.2013 / 18:17