The cornerstone of the extensible SDK is a command-line tool
called devtool
.
This tool provides a number of features that help
you build, test and package software within the extensible SDK, and
optionally integrate it into an image built by the OpenEmbedded
build system.
devtool
is not limited to
the extensible SDK.
You can use devtool
to help you easily
develop any project whose build output must be part of an
image built using the build system.
The devtool
command line is organized
similarly to
Git in that it
has a number of sub-commands for each function.
You can run devtool --help
to see all the
commands.
devtool
Quick Reference"
in the Yocto Project Reference Manual for a
devtool
quick reference.
Three devtool
subcommands exist that provide
entry-points into development:
devtool add
:
Assists in adding new software to be built.
devtool modify
:
Sets up an environment to enable you to modify the source of
an existing component.
devtool upgrade
:
Updates an existing recipe so that you can build it for
an updated set of source files.
As with the build system, "recipes" represent software packages
within devtool
.
When you use devtool add
, a recipe is
automatically created.
When you use devtool modify
, the specified
existing recipe is used in order to determine where to get the
source code and how to patch it.
In both cases, an environment is set up so that when you build the
recipe a source tree that is under your control is used in order to
allow you to make changes to the source as desired.
By default, new recipes and the source go into a "workspace"
directory under the SDK.
The remainder of this section presents the
devtool add
,
devtool modify
, and
devtool upgrade
workflows.