Files
poky/documentation/getting-started/eclipse/html/getting-started/configuration-and-compilation-dev-environment.html
Scott Rifenbark ae06e04cd2 documentation: Created new "Getting Started" manual.
Creation involved removing the overview-manual and replacing it
with the getting-started manual.  All links to the string
"&YOCTO_DOCS_OVERVIEW_URL" had to be replaced with
"&YOCTO_DOCS_GS_URL" across the entire YP manual set.  I renamed
files used to create the manual with prefixes suited for the
new manual name, which is "Getting Started With Yocto Project".

The style sheet for the new manual needed updating to display the
new .PNG image for the title page.  The mega-manual file had to
be updated to include the files.  The mega-manual.sed file had
to be updated to include the new manual and not use the overview
manual.

(From yocto-docs rev: 6c7abf9192390121000f577d6c98f259d290d15d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-14 15:25:29 +00:00

94 lines
6.2 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>2.8.5.3. Configuration and Compilation</title>
<link rel="stylesheet" type="text/css" href="../book.css">
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="Getting Started With Yocto Project">
<link rel="up" href="bitbake-dev-environment.html" title="2.8.5. BitBake">
<link rel="prev" href="patching-dev-environment.html" title="2.8.5.2. Patching">
<link rel="next" href="package-splitting-dev-environment.html" title="2.8.5.4. Package Splitting">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="section" title="2.8.5.3. Configuration and Compilation">
<div class="titlepage"><div><div><h4 class="title">
<a name="configuration-and-compilation-dev-environment"></a>2.8.5.3. Configuration and Compilation</h4></div></div></div>
<p>
After source code is patched, BitBake executes tasks that
configure and compile the source code:
</p>
<table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="630"><tr style="height: 450px"><td align="center"><img src="figures/configuration-compile-autoreconf.png" align="middle" width="630"></td></tr></table>
<p>
</p>
<p>
This step in the build process consists of three tasks:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><p>
<span class="emphasis"><em><a class="link" href="../ref-manual/ref-tasks-prepare_recipe_sysroot.html" target="_self"><code class="filename">do_prepare_recipe_sysroot</code></a>:</em></span>
This task sets up the two sysroots in
<code class="filename">${</code><a class="link" href="../ref-manual/var-WORKDIR.html" target="_self"><code class="filename">WORKDIR</code></a><code class="filename">}</code>
(i.e. <code class="filename">recipe-sysroot</code> and
<code class="filename">recipe-sysroot-native</code>) so that
the sysroots contain the contents of the
<a class="link" href="../ref-manual/ref-tasks-populate_sysroot.html" target="_self"><code class="filename">do_populate_sysroot</code></a>
tasks of the recipes on which the recipe
containing the tasks depends.
A sysroot exists for both the target and for the native
binaries, which run on the host system.
</p></li>
<li class="listitem">
<p><span class="emphasis"><em><code class="filename">do_configure</code>:</em></span>
This task configures the source by enabling and
disabling any build-time and configuration options for
the software being built.
Configurations can come from the recipe itself as well
as from an inherited class.
Additionally, the software itself might configure itself
depending on the target for which it is being built.
</p>
<p>The configurations handled by the
<a class="link" href="../ref-manual/ref-tasks-configure.html" target="_self"><code class="filename">do_configure</code></a>
task are specific
to source code configuration for the source code
being built by the recipe.</p>
<p>If you are using the
<a class="link" href="../ref-manual/ref-classes-autotools.html" target="_self"><code class="filename">autotools</code></a>
class,
you can add additional configuration options by using
the
<a class="link" href="../ref-manual/var-EXTRA_OECONF.html" target="_self"><code class="filename">EXTRA_OECONF</code></a>
or
<a class="link" href="../ref-manual/var-PACKAGECONFIG_CONFARGS.html" target="_self"><code class="filename">PACKAGECONFIG_CONFARGS</code></a>
variables.
For information on how this variable works within
that class, see the
<code class="filename">meta/classes/autotools.bbclass</code> file.
</p>
</li>
<li class="listitem"><p><span class="emphasis"><em><code class="filename">do_compile</code>:</em></span>
Once a configuration task has been satisfied, BitBake
compiles the source using the
<a class="link" href="../ref-manual/ref-tasks-compile.html" target="_self"><code class="filename">do_compile</code></a>
task.
Compilation occurs in the directory pointed to by the
<a class="link" href="../ref-manual/var-B.html" target="_self"><code class="filename">B</code></a>
variable.
Realize that the <code class="filename">B</code> directory is, by
default, the same as the
<a class="link" href="../ref-manual/var-S.html" target="_self"><code class="filename">S</code></a>
directory.</p></li>
<li class="listitem"><p><span class="emphasis"><em><code class="filename">do_install</code>:</em></span>
Once compilation is done, BitBake executes the
<a class="link" href="../ref-manual/ref-tasks-install.html" target="_self"><code class="filename">do_install</code></a>
task.
This task copies files from the <code class="filename">B</code>
directory and places them in a holding area pointed to
by the
<a class="link" href="../ref-manual/var-D.html" target="_self"><code class="filename">D</code></a>
variable.</p></li>
</ul></div>
<p>
</p>
</div></body>
</html>