Impossible de localiser BerkeleyDB


9

J'essaie d'installer un mineur bitcoin-repote-rpc depuis [http://www.mediafire.com/file/ve608cl5mk1ka3l/bitcoin-remote-rpc-20110227-src.zip]mon ordinateur portable fonctionnant sur ubuntu quantal. J'ai besoin d'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 ne peux pas résoudre est ce message d'erreur

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

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

Quand je cours

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

Je reçois les packages 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 du 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)

Veuillez ajouter plus d'informations sur votre problème. La question ne contient pas de lien vers les codes source de Bitcoin Miner et vous devez également publier le journal de construction complet pour analyse. Si ma réponse ci-dessous ne vous aide pas, j'aurai besoin de ces informations pour mettre à jour ma réponse.
oerdnj

plus d'informations ont été ajoutées.
Nadeem Muhammad

Vous n'obtenez pas les packages installés avec sudo apt-cache search libdb, mais les packages disponibles. Veuillez obtenir la liste des packages installés avecdpkg -l 'libdb*' | grep '^ii'
oerdnj

Je suis très nouveau sur Linux et j'ai besoin d'apprendre à partir de zéro :) J'ai exécuté la commande et édité ma question pour ajouter les résultats. S'il-vous-plaît évaluez. Merci pour votre aimable soutien
Nadeem Muhammad

Réponses:


12

Il peut y avoir deux raisons:

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

La base de données Berkeley a été résolue en installant libdb-dev et libdb ++ - dev comme recommandé. Cependant, je suis coincé avec une autre erreur maintenant. 'Impossible de trouver CURL' Veuillez m'informer de la prochaine étape.
Nadeem Muhammad

Installez les bibliothèques de développement CURL, ne vous souvenez pas du nom, mais si vous le faites apt-cache search libcurl dev, il vous montrera le nom du package requis.
oerdnj

Merci pour votre aimable aide. J'ai pu parcourir toutes ces erreurs de compilation et le fichier a finalement été construit. Le problème d'origine a donc été résolu. Cependant, le fichier d'application ne s'ouvre pas et lorsque je double-clique dessus. Je reçois ce message: «Aucune application n'est installée pour les fichiers exécutables. Voulez-vous rechercher une application pour ouvrir ce fichier? '
Nadeem Muhammad

Je suis désolé, mais je n'en ai aucune idée. Essayez de l'exécuter à partir du terminal en faisant <path_to_the_application>/<application_name>(ne connaissez pas le nom de l'application) ou en faisant cd <path_to_application>; ./<application_name>.
oerdnj
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.