3 title: Preparing Your Build Host
5 https://raw.githubusercontent.com/automotive-grade-linux/docs-sources/master/docs/getting-started/image-workflow-prep-host.md
8 <!-- WARNING: This file is generated by fetch_docs.js using /home/boron/Documents/AGL/docs-webtemplate/site/_data/tocs/getting_started/master/image-development-workflow-getting-started-book.yml -->
10 # 1. Preparing Your Build Host
12 Preparing your build host so that it can build an AGL image means
13 making sure your system is set up to use the
14 [Yocto Project](https://yoctoproject.org) OpenEmbedded build system,
16 [BitBake](https://yoctoproject.org/docs/2.4.4/bitbake-user-manual/bitbake-user-manual.html).
18 This section presents minimal information so you can prepare the build host
19 to use the "Rocko" version of the Yocto Project (i.e. version 2.4.4).
20 If you want more details on how the Yocto Project works, you can reference
21 the Yocto Project documentation
22 [here](https://www.yoctoproject.org/docs/).
24 **NOTE:** This entire section presumes you want to build an image.
25 You can skip the entire build process if you want to use a ready-made
28 [supported images][AGL snapshots master latest] exist for several boards as
29 well as for the Quick EMUlator (QEMU).
31 "[Downloading an Image](./app-workflow-image.html#downloading-an-image)"
32 section for more information on the ready-made images.
34 1. **Use a Supported Linux Distribution:** To use the AGL software, it is
35 recommended that your build host is a native Linux machine that runs a
36 Yocto Project supported distribution as described by the
37 "[Supported Linux Distributions](https://www.yoctoproject.org/docs/2.4.4/ref-manual/ref-manual.html#detailed-supported-distros)"
38 section in the Yocto Project Reference Manual.
39 Basically, you should be running a recent version of Ubuntu, Fedora, openSUSE,
42 If you must use a build host that is not a native Linux machine, you can
43 install and use Docker to create a container that allows you to work as
44 if you are using a Linux-based host.
45 The container contains the same development environment (i.e. distros, packages,
46 and so forth) as would a properly prepared build host running a supported
48 For information on how to install and set up this Docker container, see the
49 "[Setting Up a Docker Container](./docker-container-setup.html)"
52 2. **Be Sure Your Build Host Has Enough Free Disk Space:**
53 Your build host should have at least 50 Gbytes.
55 3. **Be Sure Tools are Recent:** You need to have recent versions for
58 * Git 1.8.3.1 or greater
60 * Python 3.4.0 or greater
62 If your distribution does not meet these minimal requirements, see the
63 "[Required Git, tar, and Python Versions](https://www.yoctoproject.org/docs/2.4.4/ref-manual/ref-manual.html#required-git-tar-and-python-versions)"
64 section in the Yocto Project Reference Manual for steps that you can
65 take to be sure you have these tools.
67 4. **Install Essential, Graphical, and Eclipse Plug-in Build Host Packages:**
68 Your build host needs certain host packages.
69 Depending on the Linux distribution you are using, the list of
72 "[The Build Host Packages](https://www.yoctoproject.org/docs/2.4.4/yocto-project-qs/yocto-project-qs.html#packages)"
73 section of the Yocto Project Quick Start for information on the packages you need.
75 **NOTE:** If you are using the CentOS distribution, you need to
76 separately install the epel-release package and run the `makecache` command as
78 "[The Build Host Packages](https://www.yoctoproject.org/docs/2.4.4/yocto-project-qs/yocto-project-qs.html#packages)"
79 section of the Yocto Project Quick Start.
81 Aside from the packages listed in the previous section, you need the following:
83 * **Ubuntu and Debian:** curl
85 * **OpenSUSE:** glibc-locale curl