2017-02-01 2 views
4

Ich habe fast eine Woche damit verbracht, Qt5.8.0 mit OpenSSL auf Ubuntu 16.04.1 x64 zu bauen.Build Qt mit OpenSSL auf Ubuntu 16.04.1 schlägt fehl

Zuerst habe ich Quellen von OpenSSL v1.0.2k heruntergeladen. Dann konfiguriert ich es mit dem Befehl

./Configure --prefix=$PWD/dist -shared linux-x86_64 

Dann laufe ich theese Befehle nacheinander:

make depend 
make 
make install 

So habe ich Openssl in /home/user/openssl-OpenSSL_1.0.2k/dist installiert

Dann holte ich mir von der offiziellen Website Qt und installiert es mit Quellen, so sind die Quellen in /home/user/Qt5.8.0/5.8/Src gelegen Dann mit dem Befehl

ich habe versucht, es zu konfigurieren 0
OPENSSL_LIBS='-L/home/user/openssl-OpenSSL_1_0_2k/dist/lib -lssl -lcrypto' ./configure -prefix /home/user/qt5_static -opensource -confirm-license -release -nomake examples -nomake tests -static -openssl-linked -I /home/user/openssl-OpenSSL_1_0_2k/dist/include/openssl -L /home/user/openssl-OpenSSL_1_0_2k/dist/lib 

aber bekam theese Fehler:

ERROR: Feature 'openssl' was enabled, but the pre-condition '!features.securetransport && tests.openssl' failed.

ERROR: Feature 'openssl-linked' was enabled, but the pre-condition 'features.openssl && libs.openssl' failed.

Was mache ich falsch, und wie dieses Problem zu beheben?

Vielen Dank im Voraus, und Entschuldigung für mein schlechtes Englisch.

+0

Wie hast du Qt abgeholt? Ich habe eine Ubuntu 16-VM ausgeführt, und ich kann einen kurzen Blick darauf werfen, wenn Sie die Schritte angeben, die sich auf Qt beziehen. Außerdem wird './Configure ... linux-x86_64' wahrscheinlich nicht benötigt, da es korrekt erraten wird. Sie sollten auch erwägen, 'enable-ec_nistp_64_gcc_128' hinzuzufügen, wenn dies zutrifft. Siehe auch [Kompilieren und installieren] (https://wiki.openssl.org/index.php/Compilation_and_Installation) im OpenSSL-Wiki. – jww

Antwort

0

Ich hatte dasselbe Problem bei dem Versuch, openSSL statisch zu verknüpfen und gefunden folgende Lösung:

1) Installieren openSSL

sudo apt-get update && sudo apt-get install libssl-dev 

2) konfigurieren und bauen qt aus Quellen, einschließlich -openssl-linked Option, mein Beispielkonfiguration :

/home/someuser/Qt/5.8/Src/configure -c++std c++11 -static -release -platform linux-g++-64 -prefix /home/someuser/Qt/StaticRelease58 -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -qt-xcb -make libs -openssl-linked -nomake tools -nomake examples -nomake tests -opensource -confirm-license -skip qtwayland -skip qtwebview -skip qtwebengine -skip qtwebchannel -no-qml-debug 

Beachten Sie, dass QT statisch zu bauen, müssen Sie auch andere Pakete installiert haben hier beschrieben:

http://doc.qt.io/qt-5/linux-requirements.html

http://doc.qt.io/qt-5/linux-deployment.html

P. S. Die dynamische Verknüpfung mit OpenSSL von QT5.8 funktioniert bei der Standardeinrichtung gut.

Verwandte Themen