> For the complete documentation index, see [llms.txt](https://amobile-solutions.gitbook.io/yocto-developer-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://amobile-solutions.gitbook.io/yocto-developer-guide/getting-started/quickstart/build-environment-setup.md).

# Build Environment Setup

{% hint style="info" %}
To compile the IoT Yocto image, you must use a Linux system.
{% endhint %}

## Setup Build Environment

To build images of IoT Yocto you need:

* Ubuntu 22.04 (LTS)
* At least 200 GiB of free disk space
* At least 16 GiB of system memory
* Internet connection

On Ubuntu, use this command to

```
$ sudo apt-get install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libelf-dev libsdl1.2-dev lz4 pylint xterm python3-subunit mesa-common-dev libstdc++-12-dev
```

And install the latest [repo tool](https://gerrit.googlesource.com/git-repo/+/refs/heads/master/README.md):

```
$ mkdir -p ~/bin
$ PATH="${HOME}/bin:${PATH}"
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+rx ~/bin/repo
```

<table><thead><tr><th width="154">Packages</th><th>Version</th></tr></thead><tbody><tr><td>repo</td><td>2.16.6 or greater</td></tr><tr><td>gcc</td><td>5.0 or greater</td></tr><tr><td>python3</td><td>3.6.0 or greater</td></tr><tr><td>tar</td><td>1.27.1 or greater</td></tr><tr><td>git</td><td>1.8.3.1 or greater</td></tr></tbody></table>
