|  | <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | 
|  | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" | 
|  | [<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] > | 
|  |  | 
|  | <chapter id='dev-manual-intro'> | 
|  |  | 
|  | <title>The Yocto Project Development Manual</title> | 
|  | <section id='dev-intro'> | 
|  | <title>Introduction</title> | 
|  |  | 
|  | <para> | 
|  | Welcome to the Yocto Project Development Manual! | 
|  | This manual provides information on how to use the Yocto Project to | 
|  | develop embedded Linux images and user-space applications that | 
|  | run on targeted devices. | 
|  | The manual provides an overview of image, kernel, and | 
|  | user-space application development using the Yocto Project. | 
|  | Because much of the information in this manual is general, it | 
|  | contains many references to other sources where you can find more | 
|  | detail. | 
|  | For example, you can find detailed information on Git, repositories, | 
|  | and open source in general in many places on the Internet. | 
|  | Another example specific to the Yocto Project is how to quickly | 
|  | set up your host development system and build an image, which you | 
|  | find in the | 
|  | <ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>. | 
|  | </para> | 
|  |  | 
|  | <para> | 
|  | The Yocto Project Development Manual does, however, provide | 
|  | guidance and examples on how to change the kernel source code, | 
|  | reconfigure the kernel, and develop an application using | 
|  | <filename>devtool</filename>. | 
|  | </para> | 
|  |  | 
|  | <note> | 
|  | By default, using the Yocto Project creates a Poky distribution. | 
|  | However, you can create your own distribution by providing key | 
|  | <link linkend='metadata'>Metadata</link>. | 
|  | A good example is Angstrom, which has had a distribution | 
|  | based on the Yocto Project since its inception. | 
|  | Other examples include commercial distributions like | 
|  | <ulink url='https://www.yoctoproject.org/organization/wind-river-systems'>Wind River Linux</ulink>, | 
|  | <ulink url='https://www.yoctoproject.org/organization/mentor-graphics'>Mentor Embedded Linux</ulink>, | 
|  | <ulink url='https://www.yoctoproject.org/organization/enea-ab'>ENEA Linux</ulink> | 
|  | and <ulink url='https://www.yoctoproject.org/ecosystem/member-organizations'>others</ulink>. | 
|  | See the "<link linkend='creating-your-own-distribution'>Creating Your Own Distribution</link>" | 
|  | section for more information. | 
|  | </note> | 
|  | </section> | 
|  |  | 
|  | <section id='what-this-manual-provides'> | 
|  | <title>What This Manual Provides</title> | 
|  |  | 
|  | <para> | 
|  | The following list describes what you can get from this manual: | 
|  | <itemizedlist> | 
|  | <listitem><para>Information that lets you get set | 
|  | up to develop using the Yocto Project.</para></listitem> | 
|  | <listitem><para>Information to help developers who are new to | 
|  | the open source environment and to the distributed revision | 
|  | control system Git, which the Yocto Project uses. | 
|  | </para></listitem> | 
|  | <listitem><para>An understanding of common end-to-end | 
|  | development models and tasks.</para></listitem> | 
|  | <listitem><para>Information about common development tasks | 
|  | generally used during image development for | 
|  | embedded devices. | 
|  | </para></listitem> | 
|  | <listitem><para>Information on using the Yocto Project | 
|  | integration of the QuickEMUlator (QEMU), which lets you | 
|  | simulate running on hardware an image you have built using | 
|  | the OpenEmbedded build system. | 
|  | </para></listitem> | 
|  | <listitem><para>Many references to other sources of related | 
|  | information.</para></listitem> | 
|  | </itemizedlist> | 
|  | </para> | 
|  | </section> | 
|  |  | 
|  | <section id='what-this-manual-does-not-provide'> | 
|  | <title>What this Manual Does Not Provide</title> | 
|  |  | 
|  | <para> | 
|  | This manual will not give you the following: | 
|  | <itemizedlist> | 
|  | <listitem><para><emphasis>Step-by-step instructions when those instructions exist in other Yocto | 
|  | Project documentation:</emphasis> | 
|  | For example, the | 
|  | <ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Software Development Kit (SDK) Developer's Guide</ulink> | 
|  | manual contains detailed instructions on how to install an | 
|  | SDK, which is used to develop applications for target | 
|  | hardware. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis>Reference material:</emphasis> | 
|  | This type of material resides in an appropriate reference manual. | 
|  | For example, system variables are documented in the | 
|  | <ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis>Detailed public information that is not specific to the Yocto Project:</emphasis> | 
|  | For example, exhaustive information on how to use Git is covered better through the | 
|  | Internet than in this manual. | 
|  | </para></listitem> | 
|  | </itemizedlist> | 
|  | </para> | 
|  | </section> | 
|  |  | 
|  | <section id='other-information'> | 
|  | <title>Other Information</title> | 
|  |  | 
|  | <para> | 
|  | Because this manual presents overview information for many different | 
|  | topics, supplemental information is recommended for full | 
|  | comprehension. | 
|  | The following list presents other sources of information you might find helpful: | 
|  | <itemizedlist> | 
|  | <listitem><para><emphasis><ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink>: | 
|  | </emphasis> The home page for the Yocto Project provides lots of information on the project | 
|  | as well as links to software and documentation. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>:</emphasis> | 
|  | This short document lets you get started | 
|  | with the Yocto Project and quickly begin building an image. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>:</emphasis> | 
|  | This manual is a reference | 
|  | guide to the OpenEmbedded build system, which is based on BitBake. | 
|  | The build system is sometimes referred to as "Poky". | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Software Development Kit (SDK) Developer's Guide</ulink>:</emphasis> | 
|  | This guide provides information that lets you get going | 
|  | with the standard or extensible SDK. | 
|  | An SDK, with its cross-development toolchains, allows you | 
|  | to develop projects inside or outside of the Yocto Project | 
|  | environment. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>:</emphasis> | 
|  | This guide defines the structure for BSP components. | 
|  | Having a commonly understood structure encourages standardization. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>:</emphasis> | 
|  | This manual describes how to work with Linux Yocto kernels as well as provides a bit | 
|  | of conceptual information on the construction of the Yocto Linux kernel tree. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_PROF_URL;'>Yocto Project Profiling and Tracing Manual</ulink>:</emphasis> | 
|  | This manual presents a set of common and generally useful tracing and | 
|  | profiling schemes along with their applications (as appropriate) to each tool. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_TOAST_URL;'>Toaster User Manual</ulink>:</emphasis> | 
|  | This manual introduces and describes how to set up and use | 
|  | Toaster, which is a web interface to the Yocto Project's | 
|  | <link linkend='build-system-term'>OpenEmbedded Build System</link>. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='http://www.youtube.com/watch?v=3ZlOu-gLsh0'> | 
|  | Eclipse IDE Yocto Plug-in</ulink>:</emphasis> | 
|  | A step-by-step instructional video that | 
|  | demonstrates how an application developer uses Yocto Plug-in features within | 
|  | the Eclipse IDE. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>FAQ</ulink>:</emphasis> | 
|  | A list of commonly asked questions and their answers. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_RELEASE_NOTES;'>Release Notes</ulink>:</emphasis> | 
|  | Features, updates and known issues for the current | 
|  | release of the Yocto Project. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/toaster'>Toaster</ulink>:</emphasis> | 
|  | An Application Programming Interface (API) and web-based | 
|  | interface to the OpenEmbedded build system, which uses | 
|  | BitBake, that reports build information. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/build-appliance'>Build Appliance</ulink>:</emphasis> | 
|  | A virtual machine that | 
|  | enables you to build and boot a custom embedded Linux image | 
|  | with the Yocto Project using a non-Linux development system. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_BUGZILLA_URL;'>Bugzilla</ulink>:</emphasis> | 
|  | The bug tracking application the Yocto Project uses. | 
|  | If you find problems with the Yocto Project, you should report them using this | 
|  | application. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis>Yocto Project Mailing Lists:</emphasis> | 
|  | To subscribe to the Yocto Project mailing | 
|  | lists, click on the following URLs and follow the instructions: | 
|  | <itemizedlist> | 
|  | <listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto'></ulink> | 
|  | for a Yocto Project Discussions mailing list. | 
|  | </para></listitem> | 
|  | <listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/poky'></ulink> | 
|  | for a Yocto Project Discussions mailing list about the | 
|  | OpenEmbedded build system (Poky). | 
|  | </para></listitem> | 
|  | <listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto-announce'></ulink> | 
|  | for a mailing list to receive official Yocto Project announcements | 
|  | as well as Yocto Project milestones. | 
|  | </para></listitem> | 
|  | <listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo'></ulink> | 
|  | for a listing of all public mailing lists on | 
|  | <filename>lists.yoctoproject.org</filename>. | 
|  | </para></listitem> | 
|  | </itemizedlist></para></listitem> | 
|  | <listitem><para><emphasis>Internet Relay Chat (IRC):</emphasis> | 
|  | Two IRC channels on freenode are available | 
|  | for Yocto Project and Poky discussions: <filename>#yocto</filename> and | 
|  | <filename>#poky</filename>, respectively. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&OE_HOME_URL;'>OpenEmbedded</ulink>:</emphasis> | 
|  | The build system used by the Yocto Project. | 
|  | This project is the upstream, generic, embedded distribution | 
|  | from which the Yocto Project derives its build system (Poky) | 
|  | and to which it contributes. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='http://www.openembedded.org/wiki/BitBake'>BitBake</ulink>:</emphasis> | 
|  | The tool used by the OpenEmbedded build system | 
|  | to process project metadata. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='&YOCTO_DOCS_BB_URL;'>BitBake User Manual:</ulink></emphasis> | 
|  | A comprehensive guide to the BitBake tool. | 
|  | If you want information on BitBake, see this manual. | 
|  | </para></listitem> | 
|  | <listitem><para><emphasis> | 
|  | <ulink url='http://wiki.qemu.org/Index.html'>Quick EMUlator (QEMU)</ulink>:</emphasis> | 
|  | An open-source machine emulator and virtualizer. | 
|  | </para></listitem> | 
|  | </itemizedlist> | 
|  | </para> | 
|  | </section> | 
|  | </chapter> | 
|  | <!-- | 
|  | vim: expandtab tw=80 ts=4 | 
|  | --> |