mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

We no longer provide this feature, so remove documentation for it. In most cases, we can replace occurrences of "debug-tweaks" by "allow-empty-password empty-root-password allow-root-login post-install-logging" to achieve what this feature previously enabled. Subtle, but the default local.conf does not include post-install-logging, so in parts where there is mention of the default local.conf file, adjust the documentation to only mention the first three above. In the intro manual, instead of providing instructions that replace EXTRA_IMAGE_FEATURES entirely, provide ones that append EXTRA_IMAGE_FEATURES. (From yocto-docs rev: f0efd4c7df91863304b92514664bdd1fa62b1fbb) Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
78 lines
2.9 KiB
ReStructuredText
78 lines
2.9 KiB
ReStructuredText
.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
|
|
|
|
******************************************
|
|
Yocto Project Profiling and Tracing Manual
|
|
******************************************
|
|
|
|
Introduction
|
|
============
|
|
|
|
Yocto Project bundles a number of tracing and profiling tools --- this manual
|
|
describes their basic usage and shows by example how to make use of them
|
|
to analyze application and system behavior.
|
|
|
|
The tools presented are, for the most part, completely open-ended and have
|
|
quite good and/or extensive documentation of their own which can be used
|
|
to solve just about any problem you might come across in Linux. Each
|
|
section that describes a particular tool has links to that tool's
|
|
documentation and website.
|
|
|
|
The purpose of this manual is to present a set of common and generally
|
|
useful tracing and profiling idioms along with their application (as
|
|
appropriate) to each tool, in the context of a general-purpose
|
|
'drill-down' methodology that can be applied to solving a large number
|
|
of problems. For help with more advanced usages and problems,
|
|
refer to the documentation and/or websites provided for each tool.
|
|
|
|
The final section of this manual is a collection of real-world examples
|
|
which we'll be continually updating as we solve more problems using the
|
|
tools --- feel free to suggest additions to what you read here.
|
|
|
|
General Setup
|
|
=============
|
|
|
|
Most of the tools are available only in ``sdk`` images or in images built
|
|
after adding ``tools-profile`` to your ``local.conf`` file. So, in order to be able
|
|
to access all of the tools described here, you can build and boot
|
|
an ``sdk`` image, perhaps one of::
|
|
|
|
$ bitbake core-image-sato-sdk
|
|
$ bitbake core-image-weston-sdk
|
|
$ bitbake core-image-rt-sdk
|
|
|
|
Alternatively, you can add ``tools-profile`` to the :term:`EXTRA_IMAGE_FEATURES` line in
|
|
your ``local.conf`` file::
|
|
|
|
EXTRA_IMAGE_FEATURES:append = " tools-profile"
|
|
|
|
If you use the ``tools-profile`` method, you don't need to build an sdk image ---
|
|
the tracing and profiling tools will be included in non-sdk images as well e.g.::
|
|
|
|
$ bitbake core-image-sato
|
|
|
|
.. note::
|
|
|
|
By default, the Yocto build system strips symbols from the binaries
|
|
it packages, which makes it difficult to use some of the tools.
|
|
|
|
You can prevent that by setting the
|
|
:term:`INHIBIT_PACKAGE_STRIP`
|
|
variable to "1" in your ``local.conf`` when you build the image::
|
|
|
|
INHIBIT_PACKAGE_STRIP = "1"
|
|
|
|
The above setting will noticeably increase the size of your image.
|
|
|
|
If you've already built a stripped image, you can generate debug
|
|
packages (xxx-dbg) which you can manually install as needed.
|
|
|
|
To generate debug info for packages, you can add ``dbg-pkgs`` to
|
|
:term:`EXTRA_IMAGE_FEATURES` in ``local.conf``. For example::
|
|
|
|
EXTRA_IMAGE_FEATURES:append = " dbg-pkgs"
|
|
|
|
Additionally, in order to generate the right type of debug info, we also need to
|
|
set :term:`PACKAGE_DEBUG_SPLIT_STYLE` in the ``local.conf`` file::
|
|
|
|
PACKAGE_DEBUG_SPLIT_STYLE = 'debug-file-directory'
|