web-dev-qa-db-fra.com

Impossible de localiser BerkeleyDB

J'essaie d'installer un mineur bitcoin-repote-rpc de [http://www.mediafire.com/file/ve608cl5mk1ka3l/bitcoin-remote-rpc-20110227-src.Zip] sur mon ordinateur portable fonctionnant sous ubuntu quantal. Je dois utiliser CMake pour construire le projet. J'ai rencontré quelques erreurs et j'ai réussi à les résoudre en installant les dépendances. Maintenant, le dernier bit que je suis incapable de résoudre est ce message d'erreur

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

J'aimerais savoir comment résoudre ce problème. Vous remerciant à l'avance.

Quand je cours

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

J'ai les paquets suivants déjà installés

 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

Et c’est la partie de CMakelists.txt qui semble produire l’erreur

# 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)
9
Nadeem Muhammad

Il pourrait y avoir deux raisons:

  1. (Simple) Avez-vous libdb-dev et libdb ++ - dev installé?
  2. Si la réponse à la première question est oui, la raison habituelle de l'échec des versions est la prise en charge inexistante de la nouvelle version de Berkeley DB. Vous devrez éditer le fichier CMakeLists.txt et le modifier pour accepter libdb-5.1.so ou libdb ++ - 5.1.so dans le cas de C++.
12
oerdnj