Skip to content

BuildTool Setup Guide

Michael Kubacki edited this page Dec 13, 2022 · 5 revisions

Table of Contents

GitHub Help

  Note: New build instructions are available. It is recommended to start with the new instructions if learning how to
        build edk2 for the first time. This page is retained for reference.

New instructions: Build Instructions

GitHub (https://help.github.com/index.html) provides step-by-step instructions for user registration and basic features supported by GitHub

GitHub EDK II Project Repositories

Getting the extra tools

Compiler

For both the BuildTools and EDK II projects, you will need to obtain a compiler from somewhere else. These instructions do not cover obtaining or installation of a compiler tools chain. The BaseTools build requires a C compiler; an assembler or ACPI assembler are not required to build tools in this project. BaseTools assume that a compiler is already configured in the environment.

Python

The BaseTools build supports the Makefile based build for EDK II. All Tools are written in either C or Python. The C tools must compile on all operating systems with various compilers, so the code is written using simple, standard functions and libraries. The Python-based tools are written assuming the features that were available in Python. GUI applications can be created in Python, using the wxPython package and all Python applications can be converted to run under a native OS (Windows, Linux or OS/X.) via the Python Tools.

The tools in this section are NOT required to build the EDK II project; they are needed to compile the BaseTools used to build the EDK II project.

  • Linux and OS/X developers using a command line, create a directory that will be used to hold the files, then change to that directory.
    • Replace URL with apropriate one from Python Tools. Installation and configuration for these tools are left to the developer.

Refer to documentation in either the UserManuals or Source folders for more information.

How to Setup the EDK II Tree

See Getting Started with EDK II

EDK II Development Process

After setting up your build environment see EDK II Development Process for making contributions to the EDK II Project.

Further Help

If you have questions about the code or run into obstacles getting things to work for you, please join our edk2-devel email list and ask your EDK II related questions on the list.

Clone this wiki locally