Diese Dateien befinden sich in / usr / pkg / include / db4
samsa% ls / usr / pkg / include / db4
db.h db_185.h db_cxx.h
Dieser Pfad sollte bereits durchsucht werden, wenn sich / usr / pkg / include in Ihrem Include-Pfad befindet ... Können Sie ein config.log veröffentlichen?
Gleiches Problem hier:
CentOS läuft auf einer virtuellen Maschine.
Suchen Sie 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
_
Inhalt von config.log: http://pastebin.com/N1jW9GuF
Immer noch ein Problem mit dem neuesten Master? AFAIK Es gab Änderungen am neuen Autotool-System, sodass Sie es möglicherweise erneut versuchen können.
Gleiches Problem unter Ubuntu 13.04.
sudo apt-get install libdb ++ - dev löst mein Problem.
Offensichtlich erhalten Sie diesen Fehler, wenn libdb nicht installiert ist. Wenn Sie sorgfältig lesen, ist auf dem Originalposter die Bibliothek installiert, aber sie wird nicht erkannt, sodass es nicht dasselbe Problem ist.
Da es im offiziellen CentOs-Repo keine libdb ++ gibt, habe ich Folgendes getan, um dieses Problem zu beheben
Alex, danke!
Ich habe das gleiche Problem: Ich habe BDB aus dem Quellcode kompiliert, möchte es aber nicht installieren. Kann ich das Konfigurationsskript irgendwie auf meine Datei db_cxx.h verweisen?
Bearbeiten: Ich habe es zu ./src/m4/bitcoin_find_bdb48.m4
hinzugefügt:
bdbdirlist=/path/to/compiled/db-4.8.30.NC/build_unix/build/include
Funktioniert.
Eine bessere Option wäre das Hinzufügen einer --with-db4-Option zum Konfigurieren
Ja oder BDB_CFLAGS / BDB_LIBS, wie in # 3550 vorgeschlagen
Dies kann wie folgt behoben werden:
cd ~/db-4.8.30.NC/build_unix
make
sudo make install
Überprüfen Sie, ob sich in / usr / local ein BerkeleyDB.4.8-Ordner befindet
ls /usr/local
Erstellen Sie dann eine symbolische Verknüpfung:
ln -s /usr/local/BerkeleyDB.4.8 /usr/include/db4.8
und dann mache:
ln -s /usr/local/db4.8/include/* /usr/include
ln -s /usr/local/db4.8/lib/* /usr/lib
Jeder Vorteil für den Symlink gegenüber so etwas wie:
echo "/usr/local/lib" > /etc/ld.so.conf.d/db-4.8.30.conf
ldconfig
Oder erstellen Sie eine statische Bibliothek und keine gemeinsam genutzte, sodass Sie die Bibliothek überhaupt nicht auf Ihrem Systemsuchpfad installieren müssen.
[centos 6.5, aktuelle Bitcoin-Version] Ich habe anscheinend bitcoind erfolgreich kompiliert, aber wenn ich versuche, es auszuführen, erhalte ich Folgendes:
./bitcoind: error while loading shared libraries: libdb_cxx-4.8.so: cannot open shared object file: No such file or directory
Nachdem ich den Anweisungen hier gefolgt bin, habe ich die 4.8-Quelle heruntergeladen und kompiliert, aber es scheint, dass keine BerkeleyDB.4.8-Ordner in / usr / local generiert werden können.
Ich habe jedoch libdb_cxx-4.8.so in db-4.8.30.NC/build_unix/.libs gefunden
Wenn ich diese .so-Datei einfach an den richtigen Stellen kopiere oder referenziere, sollte dies das Problem beheben?
Mit 'find libdb_cxx' erhalte ich Einträge für 'libdb_cxx.so' und 'libdb_cxx-4.7.so' in / usr / lib64, aber das ist alles.
Sollte ich auf bitcoin / src / m4 / bitcoin_find_bdb48.m4, Zeile: 7 , zeigen?
'bdbdirlist = / root / berkeley-db / db-4.8.30.NC / build_unix / .libs'? (Das oben erwähnte Verzeichnis db-4.8.30.NC/build_unix/build/include existiert für mich nicht).
Das Kopieren von libdb_cxx-4.8.so do / usr / lib64 scheint das Problem nicht zu beheben.
Ich entschuldige mich im Voraus für mein begrenztes Verständnis. Ich bin immer noch mit mehreren Abstraktionsebenen auf dem Laufenden. Danke im Voraus. Vollständiger Beitrag hier: https://bitcointalk.org/index.php?topic=588032
dlio, haben Sie versucht, 'install' von 'db-4.8.30.NC/build_unix/' durchzuführen? Es sollte viele der Dateien an ihren richtigen Stellen ablegen, wenn ich mich richtig erinnere.
Danke für die schnelle Antwort.
Ich habe diese folgende Alexander-Methode wie oben beschrieben ausprobiert:
`1. Quellen von BerkeleyDb herunterladen 4.8
Wenn Sie jedoch ein locate libdb_cxx
ausführen, werden immer noch nur ibdb_cxx.so und libdb_cxx-4.7.so als in / usr / lib64 / angezeigt.
Ich fühle dein Schmerz-Dilo, ich habe genau das gleiche Problem bei diesem Build:
Linux-Version 2.6.32-431.11.2.el6.x86_64 ([email protected]) (gcc-Version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)) # 1 SMP Di. 25. März 19:59:55 UTC 2014
Hier ist die Ausgabe der letzten 2 Zeilen, bevor ./configure fehlschlägt.
Suchen nach Berkeley DB C ++ - Headern ... nein
configure: error: libdb_cxx-Header fehlen
Ich habe auch getan, wie Alex oben gesagt hat, und es hat auch bei mir nicht funktioniert.
Können Sie für diejenigen, die libcxx von Grund auf neu erstellen, versuchen, die aktualisierten Schritte hier zu befolgen?
https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md#berkeley -db
Dadurch muss nicht global installiert werden.
@akstunt .. Ich hatte das gleiche Problem unter Ubuntu 12.04:
checking for Berkeley DB C++ headers... no
configure: error: libdb_cxx headers missing
So habe ich es behoben:
sudo apt-get install libdb4.8++-dev
Führen Sie dann einfach die ./configure
erneut aus.
Genau das gleiche Problem lebt weiter. Debian 7.9 im Februar 2016.
Dies löste das Problem, irgendwie:
apt-get install libdb ++ - dev
Der daraus resultierende neue Fehler war folgender:
configure: error: Berkeley DB anders als 4.8 gefunden, erforderlich für tragbare Geldbörsen (--with-inkompatible-bdb zum Ignorieren)
Hinzufügen des obigen Vorschlags zum Konfigurieren der zulässigen Kompilierung, aber diese Warnung wurde angezeigt:
configure: WARNUNG: Berkeley DB anders als 4.8 gefunden; Brieftaschen, die durch diesen Build geöffnet wurden, sind nicht tragbar!
@ MichaelBrenden mein Ubuntu
./configure --with-inkompatible-bdb lösen die Probleme.
ref: http : //brianchan.us/home/2013/11/26/installing-bitcoin-in-ubuntu/
auf Fedora 24 (und wahrscheinlich anderen Redhat wie)
löste es mit
dnf installiere libdb4-cxx-devel
Ich habe Kopfschmerzen und dieses Problem nicht gelöst
@chenluyong was hast du versucht und was war das Ergebnis?
@ronaldpetty Das Problem scheint gelöst worden zu sein, aber ich habe es nicht aufgezeichnet
Installieren Sie libdb-devel
Unter Ubuntu 16.04 habe ich Folgendes gelöst.
sudo add-apt-repository ppa: bitcoin / bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8 ++ - dev
Auf Centos 7.4 und installiert libdb 、 libdb-devel 、 libdb-cxx 、 libdb-cxx-devel, aber die Version ist zu hoch. Also habe ich unter https://www.rpmfind.net nach einer niedrigeren Version gesucht
Verwenden Sie zur Installation die Drehzahl
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
Dann ging ./configure
vorbei.
@yuexiahandao
Ihr Vorschlag hat mir geholfen.
Hier ist meine Umgebung:
[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]#
Hier ist das Problem:
[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]#
Zuletzt lautet die Auflösung:
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
und
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
Wie in der Build-Linux- Datei erwähnt , müssen Sie eine bestimmte berkleydb installieren
sudo add-apt-repository ppa: bitcoin / bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8 ++ - dev
Vielleicht hilft es jemandem:
Ich hatte das Problem mit dem Fehler configure: error: libdb_cxx-Header fehlen
Mein Problem hing mit dem Schritt zusammen
sudo update-alternatives --config x86_64-w64-mingw32-g ++ # Setzen Sie die Standard-Compileroption mingw32 g ++ auf posix.
Während der ersten Installation habe ich alles wie in der Anleitung gemacht, aber aus irgendeinem Grund hatte ich keine Wahl, eine Nummer einzugeben, um das geeignete Mingw (Posix) auszuwählen. Vielleicht habe ich es einfach nicht gesehen. Ich habe diesen Kommentar gesehen "# Setzen Sie die Standard-Compileroption mingw32 g ++ auf posix." aber dachte, das könnte dieser Befehl sein, wird alles tun, was benötigt wird.
Aber während der zweiten sauberen Installation habe ich mehr Aufmerksamkeit geschenkt und eine geeignete mit posix und dann mit make ausgewählt. HOST = x86_64-w64-mingw32 hat viel mehr Zeit in Anspruch genommen und alles wurde in Ordnung und ich hatte diesen Fehler nicht.
Es geht um offizielle Installations-Build-Windows mit WSL Ubuntu 16
Versuchen Sie, apt install libdb ++ - dev zu installieren. Es funktioniert für mich unter Ubuntu 16.04.
Dieser Code behebt es für mich:
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
(Quelle https://cryptoandcoffee.com/mining-gems/install-berkeley-4-8-db-libs-on-ubuntu-16-04/)
Wenn ich versuche, ./bitcoind auszuführen, wird die folgende Fehlermeldung ausgegeben: ./bitcoind: error while loading shared libraries: libdb_cxx-4.8.so: cannot open shared object file: No such file or directory
.
Aber ich habe dieses Problem auf einfache Weise behoben.
Sie müssen nur überprüfen, ob libdb_cxx-4.8.so in /usr/local/lib/
und /usr/local/lib64/
(jemand sagte, Sie müssen auch /usr/local/src/db-xx/build_unix/.lib/
überprüfen), dann habe ich libdb_cxx-4.8 nicht gefunden .so in lib64, also mache ich sudo ln -sf /usr/local/BerkeleyDB.4.8/lib/libdb_cxx-4.8.so /usr/lib64/libdb_cxx-4.8.so
, es funktioniert !!!!
Ich hoffe es kann dir helfen.
Hilfreichster Kommentar
sudo apt-get install libdb ++ - dev löst mein Problem.