Getting Started with EDK II
Clone this wiki locally
This page shows the steps for downloading EDK II from GitHub and compiling projects under various OS/compiler environments.
GitHub (https://help.github.com/index.html) provides step-by-step instructions for user registration and basic features supported by GitHub
- Setup GitHub for Linux | Windows | MAC | All (https://help.github.com/articles/set-up-git)
- To download and install a Git GUI interface (http://git-scm.com/)
- The EDK II project repository is available at https://github.com/tianocore/edk2.
- Prebuilt Windows tools are available at https://github.com/tianocore/edk2-BaseTools-win32.
- Please note that FatPkg is not included in the EDKII project repository, it is an independent repository which can be found at https://github.com/tianocore/edk2-FatPkg.
- Content that is not released under an accepted open source license can be found at https://github.com/tianocore/edk2-non-osi.
Several build environments are supported and documented. If instructions are not available for your exact system configuration, you may still be able to tweak the instructions to work on your system.
- Linux: Using EDK II with Native GCC (recommended for current versions of Linux)
- Microsoft Windows: Windows systems (Win7/8/8.1/10)
- Mac OS X: Xcode
- UNIX: Unix-like systems (For non-Linux UNIX, older Linux distros, or when using Cygwin)
Note: Some other build tools may be required depending on the project or package:
Note: Some of the following examples use the Multiple_Workspace feature to configure EDK II BaseTools.
Once you have a basic build environment running, you can build a project in RELEASE or DEBUG mode.
After setting up your build environment see EDK II Development Process for making contributions to the EDK II Project.
If you have questions about the code or run into obstacles getting things to work, please join the edk2-devel email list and ask your EDK II related questions on the list.
For info on writing a simple UEFI EDK II Application, see: Getting Started Writing Simple Application
To review the basic setup of .DSC, .DEC, and .INF files, see: Build Description Files