** Instructions for installing OpenSSL on Windows for use by Allegro ** CL or applications that use Allegro CL The example used here is OpenSSL 1.1.1t. These instructions are for Windows only. The Allegro CL SSL library on non-Windows platforms is statically linked. You want 32-bit or 64-bit SSL as you have 32-bit or 64-bit Allegro CL. Allegro CL Express is a 32-bit Lisp so you want 32-bit SSL if you are running Allegro CL Express. 1. Download the OpenSSL 1.1, 3.0, 3.1 or 3.2 file applicable to your Allegro CL installation: 32-bit: https://franz.com/ftp/pub/openssl/windows/openssl-1.1.1t-32.zip 64-bit: https://franz.com/ftp/pub/openssl/windows/openssl-1.1.1t-64.zip 32-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.0.8-32.zip 64-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.0.8-64.zip 32-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.1.0-32.zip 64-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.1.0-64.zip 32-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.2.0-32.zip 64-bit: https://franz.com/ftp/pub/openssl/windows/openssl-3.2.0-64.zip 2. Unpack the zip file somewhere, depending on your version of Windows (32 or 64-bit). For the purposes of this document, we assume the directory is moved to C:. 3. Add c:\openssl-1.1.1t.32\bin, or the one you chose, to your PATH. How to do this is different on different versions of Windows, but it is generally in the "System Properties" dialog and can be found in the Windows Control Panel. NOTE: make sure to add the appropriate directory to the beginning of the PATH in "System variables" and not in the "User variables for" your account. If you do, there might be another SSL library that gets loaded before the one you install above, which will very likely cause the Allegro CL SSL module to fail. 4. Run the appropriate "Microsoft Visual C++ 2008 SP1 Redistributable Package" for your operating system: 32-bit: http://franz.com/ftp/pub/openssl/windows/vcredist_x86.exe 64-bit: http://franz.com/ftp/pub/openssl/windows/vcredist_x64.exe 5. To test that it is all working, start up mlisp or alisp and do (require :ssl) If it succeeds, then the installation was done correctly. If the require fails, then it is likely either: * Try logging out and in again. This is needed under some circumstances. * Your PATH was not setup correctly. Make sure the `bin' directory extracted from the zip file is in your System PATH and not User PATH. * Did you install the Redistributable Package (step 4) for your architecture? The SSL interface will not operate without it. If you still cannot get it to work, then send us the error message you get, along with the value of your PATH variable and the output of (print-system-state). The source code used to build the above binaries was unmodified from that downloaded from openssl.org. You may download that source here: http://franz.com/ftp/pub/openssl/windows/openssl-1.1.1t.tar.gz http://franz.com/ftp/pub/openssl/windows/openssl-3.0.8.tar.gz http://franz.com/ftp/pub/openssl/windows/openssl-3.1.0.tar.gz http://franz.com/ftp/pub/openssl/windows/openssl-3.2.0.tar.gz NOTE: Allegro CL applications on Windows Because SSL is dynamically linked on Windows, it is not necessary to make any modifications to existing Allegro CL applications. Once you have installed the fixes described above, simply restart any Allegro CL application and it will use the updated SSL. **************** The binaries were built with the `build.sh` script from this repo: https://github.com/franzinc/openssl-build No modifications were made to the OpenSSL sources before the build.