Comment construire OpenSSL sur Windows avec Visual Studio 2017?
Je suis en train d'utiliser OpenSSL mais je suis bloqué sur l'étape de compilation. Le projet OpenSSL a très hostile (mauvais) de la documentation.
Est-il de toute aide à proprement parler comment construire la dernière version d'OpenSSL sur Windows avec Visual Studio 2017?
Je n'ai pas trouver toutes les informations utiles sur le site officiel OpenSSL site. Oui, il y a beaucoup de messages sur l'Internet à propos de OpenSSL compilation, mais tous d'entre eux sont obsolètes.
Avez-vous songé à l'aide de pré-compilé OpenSSL binaires au lieu de les compiler vous-même?
Avez-vous lu le fichier d'INSTALLATION? Cela fournit des instructions sur la façon de construire OpenSSL. github.com/openssl/openssl/blob/OpenSSL_1_1_0-stable/INSTALL. Vous devriez également lire les NOTES.VICTOIRE pour Windows informations: github.com/openssl/openssl/blob/OpenSSL_1_1_0-stable/NOTES.WIN
Vous devriez demander à une question spécifique pour un problème particulier. Depuis Débordement de Pile cache la Proximité raison de vous: "Questions nous demandant de recommander ou trouver un livre, un outil, une bibliothèque de logiciels, tutoriel ou d'autres hors-site de ressources sont hors sujet pour Stack Overflow car ils ont tendance à attirer les opinions des réponses et le spam. Au lieu de cela, décrire le problème et ce qui a été fait jusqu'à présent pour le résoudre." Concernant "... il y a beaucoup de messages sur l'Internet ... mais tous d'entre eux sont obsolètes" - j'en doute.
Avez-vous lu le fichier d'INSTALLATION? Cela fournit des instructions sur la façon de construire OpenSSL. github.com/openssl/openssl/blob/OpenSSL_1_1_0-stable/INSTALL. Vous devriez également lire les NOTES.VICTOIRE pour Windows informations: github.com/openssl/openssl/blob/OpenSSL_1_1_0-stable/NOTES.WIN
Vous devriez demander à une question spécifique pour un problème particulier. Depuis Débordement de Pile cache la Proximité raison de vous: "Questions nous demandant de recommander ou trouver un livre, un outil, une bibliothèque de logiciels, tutoriel ou d'autres hors-site de ressources sont hors sujet pour Stack Overflow car ils ont tendance à attirer les opinions des réponses et le spam. Au lieu de cela, décrire le problème et ce qui a été fait jusqu'à présent pour le résoudre." Concernant "... il y a beaucoup de messages sur l'Internet ... mais tous d'entre eux sont obsolètes" - j'en doute.
OriginalL'auteur AeroSun | 2017-08-03
Vous devez vous connecter pour publier un commentaire.
Je n'ai pas utilisé VS2017, mais les précédentes versions. J'imagine que c'est à peu près le même. En bref, les étapes sont les suivantes:
Installer Perl (soit ActiveState ou Fraise)
Installer MSNA
Assurez-vous que les deux Perl et de MSNA sont sur votre %PATH%
Le feu à un développement de Visual Studio Invite de commandes avec des privilèges d'administrateur (assurez-vous d'utiliser la version 32 bits de l'un si vous êtes à la construction de 32 bits OpenSSL, ou 64-bit si vous êtes à la construction de 64 bits OpenSSL)
À partir de la racine de la source OpenSSL répertoire entrez
perl Configure VC-WIN32
, si vous souhaitez 32 bits OpenSSL ouperl Configure VC-WIN64A
si vous voulez 64 bits OpenSSLEntrer
nmake
Entrer
nmake test
Entrer
nmake install
Si quelque chose va mal, à tout moment, vérifier l' INSTALLER fichier et le Les NOTES.GAGNER fichier.
Arrêtez d'écouter ces cochonneries blogs. La merde qui se développe à partir de ces blogs est l'une des raisons, il y a beaucoup de mauvais et d'informations erronées sur le web au sujet de OpenSSL. Dès qu'un idiot a une pensée, il va dans un tweet ou un blog. Suivez les Windows fichier README ou INSTALL fournis par le OpenSSL devs. Ou mieux, écouter Matt. Il est un OpenSSL dev.
Juste pour info, oui, cela fonctionne très bien dans VS 2017. Beau travail les gars.
J'ai eu à utiliser vcvarsall.chauve-souris avant de nmake pour pouvoir compiler avec visual studio: msdn.microsoft.com/en-us/library/f2ccy3wt.aspx
Oui, vcvarsall.chauve-souris fonctionne également si vous utilisez un mode normal d'invite de commande et pas un développeur invite de commande.
OriginalL'auteur Matt Caswell
Pour OpenSSL 1.0.2, j'ai écrit un script Python qui ne le bâtiment pour moi. J'ai cette habitude de faire ces scripts, comme je n'aime pas à réinventer la roue à chaque fois que j'ai besoin de construire quelque chose.
Le script est fait pour OpenSSL 1.0.2. Probablement les changements sont minimes pour les OpenSSL 1.1.0.
Voici le script:
Option 1: Enregistrez le script à
CompileOpenSSL.py
, et télécharger le OpenSSL fichier source qui est supposé avoir le format de nom deopenssl-1.X.Y.tar.gz
. Maintenant, en supposant que 7zip et perl sont accessibles à partir de la portée globale sur votre invite de commande et que vous avez la bonne MSVC variables chargé (avec par exemplevsvars32.bat
, ou au démarrage du terminal de droite), exécutez la commande suivante:Si vous utilisez MSVC 32 bits, ou
pour MSVC 64 bits.
Option 2: Faire ce que fait le script manuellement. Le script simplement des extraits de l'archive, configure les sources et les pistes de
do_ms.bat
puisnmake
. Suivez la source et ça marchera.Bonne chance!
J'ai utilisé le plus récent sources - il n'existe pas de fichiers suivants: ms\do_ms.chauve-souris, ms\nt.mak
Comme le gars qui est dit, OpenSSL 1.1.0 est différent. Les instructions que j'ai donné sont pour OpenSSL 1.0.2.
OriginalL'auteur The Quantum Physicist
aller dans le répertoire ssl à l'aide de visual studio cmd et ajouter de perl et de msna de système de chemin puis tapez:
perl Configure --openssldir=D:OpenSSLdirectory VC-WIN32
ms\do_ms.bat
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak install
( en profiter. )
OriginalL'auteur TTCOIN DEVELOPERS ttcoinfounda
Version modifiée du Physicien Quantique script python
Il peut compiler OpenSSL 1.0.x ou OpenSSL 1.1.x
Il peut compiler avec plusieurs version de Visual Studio 2017/2019 inclus.
1) Créer le fichier: CompileOpenSSL.py
2) Créer le fichier: CompileOpenSSL_vs.cmd
3) Lancer la compilation en ligne de commande (en Dehors de Visual Studio)
par exemple:
OriginalL'auteur Ti-R