diff options
Diffstat (limited to 'documentation/ref-manual/ref-structure.xml')
| -rw-r--r-- | documentation/ref-manual/ref-structure.xml | 194 |
1 files changed, 11 insertions, 183 deletions
diff --git a/documentation/ref-manual/ref-structure.xml b/documentation/ref-manual/ref-structure.xml index 3948c64377..e1c6ee0a8b 100644 --- a/documentation/ref-manual/ref-structure.xml +++ b/documentation/ref-manual/ref-structure.xml | |||
| @@ -54,10 +54,8 @@ | |||
| 54 | When you run the <filename>bitbake</filename> command, the | 54 | When you run the <filename>bitbake</filename> command, the |
| 55 | main BitBake executable, which resides in the | 55 | main BitBake executable, which resides in the |
| 56 | <filename>bitbake/bin/</filename> directory, starts. | 56 | <filename>bitbake/bin/</filename> directory, starts. |
| 57 | Sourcing an environment setup script (e.g. | 57 | Sourcing the environment setup script (i.e. |
| 58 | <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link> | 58 | <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link>) |
| 59 | or | ||
| 60 | <link linkend="structure-memres-core-script"><filename>oe-init-build-env-memres</filename></link>) | ||
| 61 | places the <filename>scripts</filename> and | 59 | places the <filename>scripts</filename> and |
| 62 | <filename>bitbake/bin</filename> directories (in that order) into | 60 | <filename>bitbake/bin</filename> directories (in that order) into |
| 63 | the shell's <filename>PATH</filename> environment variable. | 61 | the shell's <filename>PATH</filename> environment variable. |
| @@ -81,9 +79,7 @@ | |||
| 81 | is created initially when you <filename>source</filename> | 79 | is created initially when you <filename>source</filename> |
| 82 | the OpenEmbedded build environment setup script | 80 | the OpenEmbedded build environment setup script |
| 83 | (i.e. | 81 | (i.e. |
| 84 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 82 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>). |
| 85 | or | ||
| 86 | <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). | ||
| 87 | </para> | 83 | </para> |
| 88 | 84 | ||
| 89 | <para> | 85 | <para> |
| @@ -94,10 +90,8 @@ | |||
| 94 | the setup script. | 90 | the setup script. |
| 95 | For information on separating output from your local | 91 | For information on separating output from your local |
| 96 | Source Directory files, see the | 92 | Source Directory files, see the |
| 97 | "<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 93 | "<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>" |
| 98 | and | 94 | section. |
| 99 | "<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>" | ||
| 100 | sections. | ||
| 101 | </para> | 95 | </para> |
| 102 | </section> | 96 | </section> |
| 103 | 97 | ||
| @@ -177,9 +171,7 @@ | |||
| 177 | This directory contains various integration scripts that implement | 171 | This directory contains various integration scripts that implement |
| 178 | extra functionality in the Yocto Project environment (e.g. QEMU scripts). | 172 | extra functionality in the Yocto Project environment (e.g. QEMU scripts). |
| 179 | The <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link> | 173 | The <link linkend="structure-core-script"><filename>&OE_INIT_FILE;</filename></link> |
| 180 | and | 174 | script appends this directory to the shell's |
| 181 | <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link> | ||
| 182 | scripts append this directory to the shell's | ||
| 183 | <filename>PATH</filename> environment variable. | 175 | <filename>PATH</filename> environment variable. |
| 184 | </para> | 176 | </para> |
| 185 | 177 | ||
| @@ -194,14 +186,7 @@ | |||
| 194 | <title><filename>&OE_INIT_FILE;</filename></title> | 186 | <title><filename>&OE_INIT_FILE;</filename></title> |
| 195 | 187 | ||
| 196 | <para> | 188 | <para> |
| 197 | This script is one of two scripts that set up the OpenEmbedded build | 189 | This script sets up the OpenEmbedded build environment. |
| 198 | environment. | ||
| 199 | For information on the other script, see the | ||
| 200 | "<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>" | ||
| 201 | section. | ||
| 202 | </para> | ||
| 203 | |||
| 204 | <para> | ||
| 205 | Running this script with the <filename>source</filename> command in | 190 | Running this script with the <filename>source</filename> command in |
| 206 | a shell makes changes to <filename>PATH</filename> and sets other | 191 | a shell makes changes to <filename>PATH</filename> and sets other |
| 207 | core BitBake variables based on the current working directory. | 192 | core BitBake variables based on the current working directory. |
| @@ -280,157 +265,6 @@ | |||
| 280 | </para> | 265 | </para> |
| 281 | </section> | 266 | </section> |
| 282 | 267 | ||
| 283 | <section id='structure-memres-core-script'> | ||
| 284 | <title><filename>oe-init-build-env-memres</filename></title> | ||
| 285 | |||
| 286 | <para> | ||
| 287 | This script is one of two scripts that set up the OpenEmbedded | ||
| 288 | build environment. | ||
| 289 | Aside from setting up the environment, this script starts a | ||
| 290 | memory-resident BitBake server. | ||
| 291 | For information on the other setup script, see the | ||
| 292 | "<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>" | ||
| 293 | section. | ||
| 294 | </para> | ||
| 295 | |||
| 296 | <para> | ||
| 297 | Memory-resident BitBake resides in memory until you specifically | ||
| 298 | remove it using the following BitBake command: | ||
| 299 | <literallayout class='monospaced'> | ||
| 300 | $ bitbake -m | ||
| 301 | </literallayout> | ||
| 302 | </para> | ||
| 303 | |||
| 304 | <para> | ||
| 305 | Running this script with the <filename>source</filename> command in | ||
| 306 | a shell makes changes to <filename>PATH</filename> and sets other | ||
| 307 | core BitBake variables based on the current working directory. | ||
| 308 | One of these variables is the | ||
| 309 | <link linkend='var-BBSERVER'><filename>BBSERVER</filename></link> | ||
| 310 | variable, which allows the OpenEmbedded build system to locate | ||
| 311 | the server that is running BitBake. | ||
| 312 | </para> | ||
| 313 | |||
| 314 | <para> | ||
| 315 | You need to run an environment setup script before using BitBake | ||
| 316 | commands. | ||
| 317 | Following is the script syntax: | ||
| 318 | <literallayout class='monospaced'> | ||
| 319 | $ source oe-init-build-env-memres <replaceable>port_number</replaceable> <replaceable>build_dir</replaceable> | ||
| 320 | </literallayout> | ||
| 321 | Following are some considerations when sourcing this script: | ||
| 322 | <itemizedlist> | ||
| 323 | <listitem><para> | ||
| 324 | The script uses other scripts within the | ||
| 325 | <filename>scripts</filename> directory to do the bulk of | ||
| 326 | the work. | ||
| 327 | </para></listitem> | ||
| 328 | <listitem><para> | ||
| 329 | If you do not provide a port number with the script, the | ||
| 330 | BitBake server starts at a randomly selected port. | ||
| 331 | </para></listitem> | ||
| 332 | <listitem><para> | ||
| 333 | The script's parameters are positionally dependent. | ||
| 334 | Consequently, you cannot run the script and provide a | ||
| 335 | <link linkend='build-directory'>Build Directory</link> | ||
| 336 | name without also providing a port number. | ||
| 337 | In other words, the following syntax is illegal: | ||
| 338 | <literallayout class='monospaced'> | ||
| 339 | $ source oe-initbuild-env-memres <replaceable>build_dir</replaceable> | ||
| 340 | </literallayout> | ||
| 341 | <note> | ||
| 342 | The previous restriction might be resolved in the | ||
| 343 | future. | ||
| 344 | See | ||
| 345 | <ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=7555'>Bug 7555</ulink> | ||
| 346 | for more information. | ||
| 347 | </note> | ||
| 348 | </para></listitem> | ||
| 349 | </itemizedlist> | ||
| 350 | </para> | ||
| 351 | |||
| 352 | <para> | ||
| 353 | When you run this script, your Yocto Project environment is set | ||
| 354 | up, a Build Directory is created, your working directory becomes | ||
| 355 | the Build Directory, and you are presented with a list of common | ||
| 356 | BitBake targets. | ||
| 357 | Here is an example: | ||
| 358 | <literallayout class='monospaced'> | ||
| 359 | $ source oe-init-build-env-memres | ||
| 360 | No port specified, using dynamically selected port | ||
| 361 | |||
| 362 | ### Shell environment set up for builds. ### | ||
| 363 | |||
| 364 | You can now run 'bitbake <target>' | ||
| 365 | |||
| 366 | Common targets are: | ||
| 367 | core-image-minimal | ||
| 368 | core-image-sato | ||
| 369 | meta-toolchain | ||
| 370 | meta-ide-support | ||
| 371 | |||
| 372 | You can also run generated qemu images with a command like 'runqemu qemux86' | ||
| 373 | Bitbake server address: 127.0.0.1, server port: 53995 | ||
| 374 | Bitbake server started on demand as needed, use bitbake -m to shut it down | ||
| 375 | </literallayout> | ||
| 376 | The script gets its default list of common targets from the | ||
| 377 | <filename>conf-notes.txt</filename> file, which is found in the | ||
| 378 | <filename>meta-poky</filename> directory within the | ||
| 379 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | ||
| 380 | Should you have custom distributions, it is very easy to modify | ||
| 381 | this configuration file to include your targets for your | ||
| 382 | distribution. | ||
| 383 | See the | ||
| 384 | "<ulink url='&YOCTO_DOCS_DEV_URL;#creating-a-custom-template-configuration-directory'>Creating a Custom Template Configuration Directory</ulink>" | ||
| 385 | section in the Yocto Project Development Manual for more | ||
| 386 | information. | ||
| 387 | </para> | ||
| 388 | |||
| 389 | <para> | ||
| 390 | By default, running this script without a | ||
| 391 | <link linkend='build-directory'>Build Directory</link> | ||
| 392 | argument creates a build directory named | ||
| 393 | <filename>build</filename>. | ||
| 394 | If you provide a Build Directory argument and port number when you | ||
| 395 | <filename>source</filename> the script, the Build Directory is | ||
| 396 | created using that name. | ||
| 397 | For example, the following command starts the BitBake server using | ||
| 398 | port 53995 and creates a Build Directory named | ||
| 399 | <filename>mybuilds</filename> that is outside of the | ||
| 400 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>: | ||
| 401 | <literallayout class='monospaced'> | ||
| 402 | $ source oe-init-build-env-memres 53995 ~/mybuilds | ||
| 403 | </literallayout> | ||
| 404 | The <filename>oe-init-build-env-memres</filename> script starts a | ||
| 405 | memory resident BitBake server. | ||
| 406 | This BitBake instance uses the | ||
| 407 | <filename>bitbake-cookerdaemon.log</filename> file, which is | ||
| 408 | located in the Build Directory. | ||
| 409 | </para> | ||
| 410 | |||
| 411 | <para> | ||
| 412 | The OpenEmbedded build system uses the template configuration | ||
| 413 | files, which are found by default in the | ||
| 414 | <filename>meta-poky/conf</filename> directory in the | ||
| 415 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | ||
| 416 | See the | ||
| 417 | "<ulink url='&YOCTO_DOCS_DEV_URL;#creating-a-custom-template-configuration-directory'>Creating a Custom Template Configuration Directory</ulink>" | ||
| 418 | section in the Yocto Project Development Manual for more | ||
| 419 | information. | ||
| 420 | <note> | ||
| 421 | The OpenEmbedded build system does not support file or | ||
| 422 | directory names that contain spaces. | ||
| 423 | If you attempt to run the | ||
| 424 | <filename>oe-init-build-env-memres</filename> script | ||
| 425 | from a Source Directory that contains spaces in either the | ||
| 426 | filenames or directory names, the script returns an error | ||
| 427 | indicating no such file or directory. | ||
| 428 | Be sure to use a Source Directory free of names containing | ||
| 429 | spaces. | ||
| 430 | </note> | ||
| 431 | </para> | ||
| 432 | </section> | ||
| 433 | |||
| 434 | <section id='structure-basic-top-level'> | 268 | <section id='structure-basic-top-level'> |
| 435 | <title><filename>LICENSE, README, and README.hardware</filename></title> | 269 | <title><filename>LICENSE, README, and README.hardware</filename></title> |
| 436 | 270 | ||
| @@ -446,10 +280,8 @@ | |||
| 446 | <para> | 280 | <para> |
| 447 | The OpenEmbedded build system creates the | 281 | The OpenEmbedded build system creates the |
| 448 | <link linkend='build-directory'>Build Directory</link> | 282 | <link linkend='build-directory'>Build Directory</link> |
| 449 | when you run one of the build environment setup scripts (i.e. | 283 | when you run the build environment setup scripts (i.e. |
| 450 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 284 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>). |
| 451 | or | ||
| 452 | <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). | ||
| 453 | </para> | 285 | </para> |
| 454 | 286 | ||
| 455 | <para> | 287 | <para> |
| @@ -507,9 +339,7 @@ | |||
| 507 | <filename>local.conf.sample</filename> when | 339 | <filename>local.conf.sample</filename> when |
| 508 | you <filename>source</filename> the top-level build environment | 340 | you <filename>source</filename> the top-level build environment |
| 509 | setup script (i.e. | 341 | setup script (i.e. |
| 510 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 342 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>). |
| 511 | or | ||
| 512 | <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). | ||
| 513 | </para> | 343 | </para> |
| 514 | 344 | ||
| 515 | <para> | 345 | <para> |
| @@ -561,9 +391,7 @@ | |||
| 561 | <filename>bblayers.conf.sample</filename> when | 391 | <filename>bblayers.conf.sample</filename> when |
| 562 | you <filename>source</filename> the top-level build environment | 392 | you <filename>source</filename> the top-level build environment |
| 563 | setup script (i.e. | 393 | setup script (i.e. |
| 564 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 394 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>). |
| 565 | or | ||
| 566 | <link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>). | ||
| 567 | </para> | 395 | </para> |
| 568 | 396 | ||
| 569 | <para> | 397 | <para> |
