# Introduction

## Introduction

This manual provides reference information for the current release of the Yocto Project. The Yocto Project is an open-source collaboration project focused on embedded Linux developers. Amongst other things, the Yocto Project uses the Poky build tool to construct complete Linux images. You can find complete introductory and getting started information on the Yocto Project by reading the Yocto Project Quick Start. For task-based information using the Yocto Project, see The Yocto Project Development Manual. You can also find lots of information on the Yocto Project on the Yocto Project website.

## Documentation Overview

This reference manual consists of the following:

- Using the Yocto Project: This chapter provides an overview of the components that make up the Yocto Project followed by information about debugging images created in the Yocto Project.

- Technical Details: This chapter describes fundamental Yocto Project components as well as an explanation behind how the Yocto Project uses shared state (sstate) cache to speed build time.

- Board Support Packages (BSP) - Developer's Guide: This chapter describes the example filesystem layout for BSP development and the click-through licensing scheme.

- Platform Development With the Yocto Project: This chapter describes application development, debugging, and profiling using the Yocto Project.

- Reference: Directory Structure: This appendix describes the directory structure of the Yocto Project files. The Yocto Project files represent the file structure or Git repository created as a result of setting up the Yocto Project on your host development system.

- Reference: BitBake: This appendix provides an overview of the BitBake tool and its role within the Yocto Project.

- Reference: Classes: This appendix describes the classes used in the Yocto Project.

- Reference: Images: This appendix describes the standard images that the Yocto Project supports.

- Reference: Features: This appendix describes mechanisms for creating distribution, machine, and image features during the build process using the Yocto Project.

- Reference: Variables Glossary: This appendix presents most Yocto Project variables. Entries describe the function of the variable and how to apply them.

- Reference: Variable Context: This appendix provides variable locality or context.

- Reference: FAQ: This appendix provides answers for commonly asked questions in the Yocto Project development environment.

- Reference: Contributing to the Yocto Project: This appendix provides guidance on how you can contribute back to the Yocto Project.

## System Requirements

For Yocto Project system requirements, see the What You Need and How You Get It section in the Yocto Project Quick Start.

## Obtaining the Yocto Project

The Yocto Project development team makes the Yocto Project available through a number of methods:

- Releases: Stable, tested releases are available through .

- Nightly Builds: These releases are available at . These builds include Yocto Project releases, meta-toolchain tarballs, and experimental builds.

- Yocto Project Website: You can find releases of the Yocto Project and supported BSPs at the Yocto Project website. Along with these downloads, you can find lots of other information at this site.

## Development Checkouts

Development using the Yocto Project requires a local copy of the Yocto Project files. You can get these files by downloading a Yocto Project release tarball and unpacking it, or by establishing a Git repository of the files. For information on both these methods, see the "Getting Setup" section in The Yocto Project Development Manual.