# 1. Setting up the build system Building images for AMD BSPs requires setting up the Yocto Project Build System. Please follow the guidelines on [Yocto Project Overview and Concepts Manual](https://www.yoctoproject.org/docs/3.1/overview-manual/overview-manual.html) and [Yocto Project Quick Build Guide](https://www.yoctoproject.org/docs/3.1/brief-yoctoprojectqs/brief-yoctoprojectqs.html) if you are not familiar with the Yocto Project and it's Build System. Running the following commands will setup the build system and will enable us to build recipes & images for any of the supported AMD BSPs (i.e `r1000`, `v1000` or `e3000`). ### 1.1 Prerequisites Install the build system's dependencies: ```sh sudo apt install -y gawk wget git-core diffstat unzip \ texinfo gcc-multilib build-essential chrpath socat \ cpio python3 python3-pip python3-pexpect xz-utils \ debianutils iputils-ping python3-git python3-jinja2 \ libegl1-mesa libsdl1.2-dev pylint3 xterm ``` ### 1.2 Download the build system and the meta-data layers Select the Yocto Project branch: ```sh YOCTO_BRANCH="dunfell" ``` Clone the git repositories: ```sh git clone --single-branch --branch "${YOCTO_BRANCH}" \ "git://git.yoctoproject.org/poky" "poky-amd-${YOCTO_BRANCH}" cd poky-amd-${YOCTO_BRANCH} git clone --single-branch --branch "${YOCTO_BRANCH}" \ "git://git.openembedded.org/meta-openembedded" git clone --single-branch --branch "${YOCTO_BRANCH}" \ "git://git.yoctoproject.org/meta-dpdk" git clone --single-branch --branch "${YOCTO_BRANCH}" \ "git://git.yoctoproject.org/meta-amd" ``` Checkout commit hashes: ```sh git checkout --quiet tags/yocto-3.1.2 cd meta-openembedded git checkout --quiet 144077083457ccb75700777d5e6b1da9aaff01aa cd ../meta-dpdk git checkout --quiet 4fa8669a413f96d6df4358b4d70f563baa272e69 cd ../meta-amd git checkout --quiet HEAD cd .. ``` --- #### What's next Continue to "Section 2 - Setting up and starting a build" ([BUILD.md](BUILD.md)) for instructions on how to setup and start a build for a particular AMD BSP.