Building OpenSSL 0.9.8d
Building a Web Server, for Windows
Requirements
- Microsoft Visual C++
[we will use Visual Studio 98 / VC++ 6.0]
[Visual Studio .NET will also work with the same instructions]
- Perl
[native Perl, not Cygwin Perl]
- Notes: When using the command-line (command-shell) with VC++, always set the Build Environment and update the System PATH to reflect the tools used in the build --> Guide: Working with the Command Shell
Download
Our Configuration
- Install to : C:\www\openssl
- Module type : dynamically loaded modules, *.so
- openssl.cnf location : C:\www\openssl\bin
Build, Test, and Install OpenSSL
Open a comand-line interface, with the Build Environment set and the System PATH containing the path to perl.exe.
Configure
> cd /d C:\build\openssl-0.9.8d
> perl Configure enable-camellia --openssldir=C:/www/openssl VC-WIN32
['enable-camellia' enables the symmetric cipher 'Camellia' (128-bit, 192-bit, 256-bit key versions), which is now available for royalty-free use]
[--openssldir=DIR specifies the install location]
[note the unix forward style slashes(/), instead of windows style back slashes(\)]
Add Assembly Functions
Note that if your Compiler or System does not include MASM (ml.exe error): start over and run 'ms\do_ms' under this step instead.
Use x86 assembly functions for performance improvements...
> ms\do_masm
Build, Test, Install
> nmake -f ms\ntdll.mak
> nmake -f ms\ntdll.mak test
> nmake -f ms\ntdll.mak install
Add OpenSSL to the PATH
- Set PATH under Start » Settings » Control Panel » System » Advanced » Environment Variables » System variables » Path
Testing
> openssl version
- ['OpenSSL 0.9.8d 28 Sep 2006']
> openssl s_client -connect www.openssl.org:443
- [connect to server on SSL port]
GET / HTTP/1.0 [Enter twice]
- [display front page]