Pi Foundry a Yocto learning lab Source & feedback

SMALL BOARD. YOUR LINUX.

From an idea
to your first image.

Prepare a Yocto recipe. Understand what it does. Then follow the path to a Linux image made for your Raspberry Pi.

100% in your browserNo account or hardware needed to learn

MAKE SOMETHING SMALL

Your first package starts here.

Choose a template, give it a name,
and inspect every generated file.

1

Describe your package

What are you packaging?

Single-file templates invoke the cross-compiler directly. Build-system templates bundle a complete small C project and devshell-steps.txt debugging instructions. Read the build-system and devshell lessons in The basics tab before adapting them.

Lowercase, e.g. hello-pi. Becomes the executable name.
Local examples are MIT and reference Poky's real common-license checksum. CLOSED skips the license checksum; it is not a way to bypass another project's license.
DEPENDS uses recipe names and prepares headers/libraries. It does not add linker flags or runtime services. Adapt compilation if needed.

2

Inspect your starter files

The archive preserves these paths. Individual downloads contain one file only.

BITBAKE RECIPE
A layer, not just a snippet.Recipe + source + config + image + commands
What am I looking at?

S is the source directory; B is the build directory. do_compile uses Yocto's cross-compiler, not your laptop's gcc. do_install stages files under ${D}, not on your host filesystem.

For this pinned Scarthgap release, local file:// sources unpack into ${WORKDIR}; Git sources into ${WORKDIR}/git. Newer releases changed unpacking conventions. Do not blindly copy this into Styhead or later.

IMAGE_INSTALL:append = " hello-pi" adds a package to an image. The initial space matters. Downloaded files are examples licensed under this repository's MIT license unless you explicitly select CLOSED and replace them with authorized proprietary code.