====== 1. Preparation ====== Before you can compile OpenSSL, some tools need to be installed. ---- ===== What do I need? ===== ^ Tool ^ For what? ^ Required? ^ | Visual Studio 2022 | C/C++ Compiler | **Yes** | | Strawberry Perl | Configuration scripts | **Yes** | | NASM | Assembly optimizations | Recommended | | Git | Download source code | **Yes** | | Windows SDK | Header files | **Yes** (usually included with VS) | ---- ===== Quick Installation ===== **For the impatient:** These three commands install everything you need: # Visual Studio 2022 Community (free) winget install Microsoft.VisualStudio.2022.Community # Perl for build scripts winget install StrawberryPerl.StrawberryPerl # NASM for faster cryptography winget install NASM.NASM After installation: **Restart computer** so all paths are set! ---- ===== Detailed Guides ===== * [[.:windows-tools|Install Windows Tools]] - Step by step * [[.:wsl-einrichten|Set up WSL2]] - For Linux builds on Windows * [[.:emscripten|Emscripten SDK]] - For WASM/Blazor builds ---- ===== Verification ===== After installation you can check if everything works: # 1. Load Visual Studio environment & "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat" # 2. Check C compiler cl # Expected output: Microsoft (R) C/C++ Optimizing Compiler Version 19.xx # 3. Check Perl perl -v # Expected output: This is perl 5, version xx # 4. Check NASM (optional) nasm -v # Expected output: NASM version 2.xx ---- ===== Frequently Asked Questions ===== **Q: Do I need Visual Studio Professional/Enterprise?** No! Visual Studio **Community** is free and sufficient. **Q: Can I use a different C compiler?** Theoretically yes (MinGW, Clang), but the Microsoft compiler is best tested for Windows. **Q: What is NASM and do I really need it?** NASM is an assembler. OpenSSL has hand-optimized assembly routines for AES, SHA, etc. Without NASM, slower C implementations are used. For production builds: **Install NASM!** ---- ===== Continue to ===== * [[.:windows-tools|Install Windows Tools in Detail]] * [[.:quellen:start|2. Download Sources]] ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//