-
An x86-64 machine
-
Check if your system has support for SGX1 with or without FLC, please look here
- If your system does not support SGX1+FLC, simulation mode can be used.
-
Windows Server 2019 or Windows 10 (1709 or newer)
Install Visual Studio Build Tools 2019. Choose the "C++ build tools" workload. Visual Studio Build Tools 2019 has support for CMake Version 3.15 (CMake ver 3.12 or above is required for building Open Enclave SDK). For more information about CMake support, look here.
Download Git for Windows 64-bit.
Install Git and add Git Bash to the PATH environment variable.
Typically, Git Bash is located in C:\Program Files\Git\bin
.
Currently the Open Enclave SDK build system uses bash scripts to configure
and build Linux-based 3rd-party libraries.
Open a command prompt and ensure that Git Bash is added to PATH.
C:\>where bash
C:\Program Files\Git\bin\bash.exe
Tools available in the Git bash environment are also used for test and sample
builds. For example, OpenSSL is used to generate test certificates, so it is
also useful to have the Git\mingw64\bin
folder added to PATH. This can be checked
from the command prompt as well:
C:\>where openssl
C:\Program Files\Git\mingw64\bin\openssl.exe
Download Clang/LLVM for Windows 64-bit. Install Clang 8.0.1 and add the LLVM folder (typically C:\Program Files\LLVM\bin) to PATH. Open Enclave SDK uses clang to build the enclave binaries.
Open up a command prompt and ensure that clang is added to PATH.
C:\> where clang
C:\Program Files\LLVM\bin\clang.exe
C:\> where llvm-ar
C:\Program Files\LLVM\bin\llvm-ar.exe
C:\> where ld.lld
C:\Program Files\LLVM\bin\ld.lld.exe
Download and install the latest build of OpenSSL for Windows from one of the following locations or build and install it from source.
Alternatively, you can use the latest version of OpenSSL that the OpenEnclave CI team publishes which is distributed under the dual OpenSSL and SSLeay license without further legal obligations.
After installing OpenSSL, add openssl
to your PATH
.
C:\Users\test> where openssl
C:\oe_prereqs\OpenSSL\x64\release\bin\openssl.exe
Check the SGX support level for your system.
-
If the support level is SGX1+FLC and you would like to use the SDK to leverage this support, please install Intel packages for SGX1+FLC.
-
If there is no SGX support on your system, you can use the package in simulation mode.
Download the required Windows NuGet Package from here and place it in a directory of your choice. Use the command below to install the NuGet package. In this example, we are placing the NuGet Package in C:\openenclave_nuget
and installing it to C:\oe
.
nuget.exe install open-enclave -Source C:\openenclave_nuget -OutputDirectory C:\oe -ExcludeVersion
Note: If it is an RC package, append -pre
to the command above.
After the installation, the Open Enclave SDK will be placed in the path C:\oe\open-enclave\openenclave
.
Use the following command to copy the SDK to C:\openenclave
.
xcopy /E C:\oe\open-enclave\openenclave C:\openenclave\
The rest of the documentation assumes C:\openenclave
as the default installation path of the SDK.
See Using the Open Enclave SDK for verifying and using the installed SDK.