SBL build is supported on both Windows and Linux environments
Building on Linux¶
Supported environment: Ubuntu Linux 18.04 LTS
Install the following software:
- GCC 7.3 or above
- Python 3.6 or above
- NASM 2.12.02 or above
- IASL 20160422
Build Tools Download - Ubuntu¶
Install required packages on Ubuntu:
$ sudo apt-get install -y build-essential iasl python uuid-dev nasm openssl gcc-multilib qemu git
Building on Windows¶
Supported environment: Microsoft Visual Studio 2015 or Microsoft Visual Studio 2017 Community
Install the exact versions (if specified) of the following tools to the designated directories:
- Python 3.6 - C:\Python36
- NASM 2.12.02 - C:\Nasm
- IASL 20160422 - C:\ASL
- OpenSSL - C:\openssl
- Git (ex. GitBash)
SBL Keys Generation¶
Generate SBL keys and this is pre-requiste before SBL build:
python $(SBL_ROOT)\BootloaderCorePkg\Tools\GenerateKeys.py -k $SBL_KEY_DIR
Set of private and public keys would be generated for specified key sizes:
Replace OS Test Public keys generated OS1_TestKey_Pub_RSA2048.pem/OS1_TestKey_Pub_RSA3072.pem keys with respective public keys used in signing OS Image
Build Tools Download - Windows¶
Python 3.6.x 64 bit version.
Add Python to the PATH
Python version 3.6.6 is the tested version.
unzip then copy files to C:\asl
Require: Install to C:\Asl
Require: Install to C:\Nasm
Download latest win64 version from https://wiki.openssl.org/index.php/Binaries)
Require: Install to C:\Openssl
Set environment variable OPENSSL_PATH to openssl directory where openssl.exe is present. For example: set OPENSSL_PATH=C:\Openssl\bin
Git on Windows
Install Git or add its executable path in your PATH environment if already exists.
Here is GitBash as an example.
Download GitBash from https://git-scm.com
Below are RECOMMENDED options. For others, it’s okay to use default selected option.
Make sure “Git LFS (Large File Support)” is selected.
Make sure “Git from the command line…” is selected.
Make sure “Checkout as-is, commit as-is” is selected.