Table of Contents
Ibland kan din dator visa ett meddelande som säger att den nästan säkert kompilerar openssl win32. Det kan finnas många orsaker till detta problem.
Uppdaterad
Det kan kompileras med flera olika Visual Studio 2017/2019.
Importera operativsystemimportera os.sökväganrop scan underprocessImportera tystnadImportsystemImporteraImportera Argparse# Argumentparser = argparse.ArgumentParser ()parser.add_argument ("- f", "--filename", help = "Det första inlägget måste vara en tar.gz-fil från OpenSSL-källan", required = True)parser.add_argument ("-a", "--arch", hjälp antyder "Det andra argumentet bör ofta vara x86 eller möjligen amd64", required = True)parser.add_argument ("- v", "--vs_version", help you = "Registrera Visual Studio (till exempel: 90, 150, 150)", obligatoriskt = True)parser.set_defaults (writeVersionInfos = False)args är lika med parser.parse_args ()compile_flags är lika med = "-no-asm"#compile_flags "-no-asm -no-shared"openssl_32_flag är lika med "VC-WIN32"openssl_64_flag matchar "VC-WIN64A"Arbetskatalog = os.getcwd ()dirname är lika med args.filename.replace (.tar.gz "," ")src_32_suffix är lika med "_" + "vs" + args.vs_version + "_32"src_64_suffix matchar "_" + "vs" + args.vs_version + "_64"vs_tools_env_var = "VS" + args.vs_version + "COMNTOOLS"om args.arch! = "x86" och args.arch! antyder "amd64": print ("Den andra oenigheten måste alltid vara x86 eller amd64") Uttag (1)om du är säker på vilken bool (re.match ("(openssl-) 1 ( d) + (.) ( d) + (.) ( d) + ( w) + (. tar.gz) " , args. filnamn)): print ("Denna början ser inte ut i linje med en openssl-satsfil. Den måste vara produkt i var och en av våra deras former: openssl-x.y.zw.tar.gz ") Uttag (1)anrop ("7z c -y" + args.filnamn) # hämta alla .gz-filerdirname_src_32 är lika med + dirname src_32_suffixdirname_src_64 betyder + dirname src_64_suffixdirname_bin_32 betyder + dirname src_32_suffix + "_build"dirname_bin_64 = + dirname src_64_suffix + "_build"openssl_tar_file betyder args.filnamn [0: -3]om args.arch == "x86":# radera tidigare kataloger Shutil.rmtree (os.getcwd () + '/' + katalognamn, ignore_errors antyder True) Shutil.rmtree (os.getcwd () + '/' + dirname_src_32, tar ignore_errors = True)# Extrahera filen som 32. get kommunicera med ("7z x -y tum + openssl_tar_file) os.rename (dirname, dirname_src_32)#Kompilera 32 os.chdir (dirname_src_32) put ("perl Configure" + openssl_32_flag + inches --prefix betyder "+ os.path.join (working_dir, dirname_bin_32) +" inches + compil_flags) anrop ("perl Configure" + openssl_32_flag + "+ --prefix =" os.path.join (working_dir, dirname_bin_32) + "" + compile_flags, shell = True) i ett fall där (os.path.exists ("ms / do_ms.bat")): call ("ms do_ms.bat", commit = True) print (os.getcwd ()) samtal ("nmake -f business / ntdll.mak", skal = True) call ("nmake -f master of science / ntdll.mak install", skal = True) annan: samtal ("nmake", skal = True) anrop ("nmake test", lager = True) anrop ("nmake install", skal = True) Utskrift ("32-bitars system avbröts.")# Återgå med hemkatalogenos.chdir (worker_director)##################if args.arch == "amd64":# radera de senaste katalogerna Shutil.rmtree (os.getcwd () + '/' + katalognamn, ignore_errors = True) Shutil.rmtree (os.getcwd () + '/' + dirname_src_64, ignore_errors = True)#Extractwhose för otroligt få 64 samtal ("7z x -b" + openssl_tar_file) os.rename (dirname, dirname_src_64)Samlingsnummer 64 os.chdir (dirname_src_64) Ring ("perl Configure" + openssl_64_flag + "--prefix =" + os.path.join (working_dir, dirname_bin_64) + in. "+ Compile_flags, shell = True) incase (os.path.exists ("ms do_ms.bat")): samtal ("ms do_win64a.bat", skal antyder True) få tag på ("nmake -f ms / ntdll.mak", skalet är lika med True) need ("nmake -f ms / ntdll.mak install", lager = True) annan: samtal ("nmake", fröskydd = Sant) anrop ("nmake test", skal = True) ring helt enkelt ("nmake install", shell = True) papperskopia ("64-bitars kompilering slutförd.")# Återgå till den ursprungliga katalogenos.chdir (worker_director)##################os.remove (openssl_tar_file)
ECHO -------------------------------------------- ------ ----------ECHO kräver Python, 7Zip, PERL och NASM PATHECHO's ---------------------------------------------------- - ---Boehm -------------------------------------------------- -----Rem FÖR ANPASSNING --------------------------------------------------Boehm -------------------------------------------------- -----Rem BESTÄMMA LOKALA SÄTT --------------------------------------------------INSTALLATIONSPATH = C: Program Files (x86) 7-Zip; C: Perl64 bin; M: Backup Coders _tools 7-Zip ;% PATH%OBS STÄLL IN OPENSSL-ARKIVET ------------------------------------------REM SET FILENAME = openssl-1.0.2r.tar.gzSET FILNAMN är lika med openssl-1.1.1b.tar.gzRem INSTALLERA DIN VISUAL STUDIO-VERSION ------------------------------------------INSTALLERA VSVERSION =% 1Boehm -------------------------------------------------- -----START REM SAMMANSTÄLLNING ----------------------------------Boehm -------------------------------------------------- -----Rem UTILITY WAY -----STÄLL IN VSCOMNTOOLSNAME = VS% VSVERSION% COMNTOOLSRem Välj rätt väg för Studio ------------------------------------------IF visuellt % VSVERSION % GEQ 150 ( Echo GLÖM INTE ATT LÄGA TILL SYSTEM VARIABLE% VSCOMNTOOLSNAME% - till exempel: "C: Program Files (x86) Microsoft Visual Studio 2017 Community Common7 Tools " SET VCVARPATH = "%%% VSCOMNTOOLSNAME %%% .. .. VC A auxiliary Build vcvarsall.bat") ANNAN ( SET VCVARPATH = "%%% VSCOMNTOOLSNAME %%% .. .. VC vcvarsall.bat")Rem Env Together ---------------------------------------------------- genom ---@pushd "% ~ dp0"Ring% VCVARPATH %% 2. på@popdBoehm -------------------------------------------------- -----REM TEST-APP FINNS ----------------------------------Boehm -------------------------------------------------- -----where och q 7z.exeOM NIVÅ 1 FEL ( ECHO-applikationen "7z.exe" används inte. Se till att lägga till / ställa in den till PATH i början av detta testskript, SET PATH PAUS OUTPUT / B)där / q perl.exeOM fast FELNIVÅ ( ECHO Verktyget "perl.exe" saknas. Se till att lägga till - ställ in enhet när du kör skript, inkludera SET PATH PAUS OUTPUT / B)där / q nmake.exeOM NIVÅ ett helt FEL ( ECHO Verktyget nmake.exe saknas. Var noga med att lägga till eller installera Lägg det i PATH i början av ett skript. Kontrollera denna SET PATH PAUS OUTPUT / B)där q py.exeOM SPECIELL FELNIVÅ ( ECHO Posten "py.exe" [förkortning av Python] saknas. Se till att PATH läggs till mot set i början av det här skriptet, utfärdar SET PATH PAUS OUTPUT / B)Kör Rem-kompilering ---------------------------------------------------- - ---py CompileOpenSSL.py -f% FILENAME% -a% 2 -v% VSVERSION%PAUS
CompileOpenSSL_vs.cmd 150 x86CompileOpenSSL_vs.cmd etthundra 5 amd64CompileOpenSSL_vs.cmd 90 x86
Få fart på din dator idag med denna enkla nedladdning.
To Fix Openssl Win32 Just Compile It
Openssl Win32를 수정하려면 컴파일하십시오.
Pour Réparer Openssl Win32, Il Suffit De Le Compiler
Um Openssl Win32 Zu Reparieren, Kompilieren Sie Es Einfach
Aby Naprawić Openssl Win32, Po Prostu Go Skompiluj
Om Openssl Win32 Te Repareren, Compileer Het Gewoon
Чтобы исправить Openssl Win32, просто скомпилируйте его
Para Arreglar Openssl Win32 Simplemente Compílelo
Para Corrigir O Openssl Win32, Basta Compilá-lo
Per Correggere Openssl Win32 Basta Compilarlo