OpenSSL wurde während ./configure nicht gefunden

9

Ich versuche, einen Bitcoin-ähnlichen Daemon auf meinem Ubuntu 14.04.3 zu erstellen. Wenn ich treffe ./configure:

checking for SSL... no
configure: error: openssl  not found.

aber

# apt-get install libssl-dev linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
libssl-dev is already the newest version.
linux-headers-3.13.0-61-generic is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Ich habe die Fehlermeldung gegoogelt, aber ich habe keine Ahnung, was ich tun soll. Ich habe genau diesen einen Daemon auf meinem anderen Ubuntu 14.04 erfolgreich erstellt, sodass die Quellen und Konfigurationsskripte gut sind.

UPD1. Die Installation von openssl hat nicht geholfen:

# apt-get install openssl
..
openssl is already the newest version.
..

Ich habe config.log überprüft und es gibt nichts über openssl am Ende - HAVE_WORKING_BOOST_SLEEP_FORbezieht sich auf checking for dynamic linked boost test... yes- letzte erfolgreiche Zeile von der ./configureAusgabe:

# tail config.log
#define HAVE_BOOST /**/
#define HAVE_BOOST_SYSTEM /**/
#define HAVE_BOOST_FILESYSTEM /**/
#define HAVE_BOOST_PROGRAM_OPTIONS /**/
#define HAVE_BOOST_THREAD /**/
#define HAVE_BOOST_CHRONO /**/
#define HAVE_BOOST_UNIT_TEST_FRAMEWORK /**/
#define HAVE_WORKING_BOOST_SLEEP_FOR 1

configure: exit 1

UPD2. Ich habe das im Log gefunden, ziemlich weit vom Ende entfernt:

configure:25626: checking for SSL
configure:25633: $PKG_CONFIG --exists --print-errors "libssl"
Package libssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libssl' found
configure:25636: $? = 1
configure:25650: $PKG_CONFIG --exists --print-errors "libssl"
Package libssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libssl' found
configure:25653: $? = 1
configure:25667: result: no
No package 'libssl' found
configure:25683: error: openssl  not found.
user510433
quelle
1
libssl-dev ist nicht openssl . Versuchen Sie, letzteres zu installieren. Wenn dies nicht hilft, überprüfen Sie config.logden genauen Befehl, der fehlschlägt (er wird kurz vor dem Ende stehen), und bearbeiten Sie Ihre Frage, um sie einzuschließen. Wir können Ihnen dann vorschlagen, was Ihnen fehlt.
Ein CVn
@ MichaelKjörling: Aber die Autoconf-Ausgabe ist auch kein Debian-Paketname ... Es ist wahrscheinlicher, dass sie sich auf pkg-config- Pakete bezieht (und libssl-dev enthält openssl.pc).
user1686
Aktualisiert. Kann ich noch etwas überprüfen?
user510433
Existiert die Datei /usr/lib/<arch>/pkgconfig/libssl.pc?
Gowtham
Was ist <arch>? /usr/lib/pkgconfig/; /usr/share/pkgconfig/; /usr/local/lib/pkgconfig/nicht enthaltenlibssl.pc
user510433

Antworten:

10

Sie finden einen Paketnamen libssl-devim Synaptic Package Manager (Ubuntu 16.04) und nach der Installation libssl-devwird alles gelöst. libssl1.0.0funktioniert übrigens nicht. Sie sollten besser installieren libssl-devund libssl1.0.0gleichzeitig.

Ich glaube übrigens nicht, dass die folgende Lösung funktioniert: 'pkg-config' befindet sich in Ihrem PATH und PKG_CONFIG_PATH enthält eine openssl.pc-Datei. Wenn pkg-config nicht verfügbar ist, können Sie INCLUDE_DIR und LIB_DIR manuell festlegen über: R CMD INSTALL --configure-vars = 'INCLUDE_DIR = ... LIB_DIR = ...'

Shicheng Guo
quelle
Ich habe versucht, einen Crystal Lang-HTTP-Server auszuführen, und habe die Fehlermeldung "Paket libssl wurde nicht im Suchpfad pkg-config gefunden. Vielleicht sollten Sie das Verzeichnis" libssl.pc "zur Umgebungsvariablen PKG_CONFIG_PATH hinzufügen. Kein Paket" libssl ". gefunden ". Die Installation von libssl-dev hat das Problem gelöst.
VRPF
4

Aus irgendeinem Grund PKG_CONFIG_PATHenthielt es nicht den richtigen Pfad für diese openssl.pcDatei, die für das Dienstprogramm pkg-config benötigt wurde. Ich habe es find / -name 'openssl.pc'gefunden /usr/lib/x86_64-linux-gnu/pkgconfig/. Dieser Weg wurde auch von meinem anderen Ubuntu benutzt ./configure.

Also bin ich gelaufen ./configure PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig/"und das hat den Trick gemacht!

Andere Sache, es gibt eine andere openssl.pcin meiner, /usr/local/ssl/lib/pkgconfig/aber als ich versuchte, sie zu verwenden, makehängt der folgende Befehl mit verschiedenen Fehlern (wie unbekannter Verweis auf Funktion usw.).

user510433
quelle