From c527fd1f14c27855a37f2e8ac5346ce8d940ced2 Mon Sep 17 00:00:00 2001 From: Tudor Florea Date: Thu, 16 Oct 2014 03:05:19 +0200 Subject: initial commit for Enea Linux 4.0-140929 Migrated from the internal git server on the daisy-enea-point-release branch Signed-off-by: Tudor Florea --- documentation/ref-manual/introduction.xml | 556 ++++++++++++++++++++++++++++++ 1 file changed, 556 insertions(+) create mode 100644 documentation/ref-manual/introduction.xml (limited to 'documentation/ref-manual/introduction.xml') diff --git a/documentation/ref-manual/introduction.xml b/documentation/ref-manual/introduction.xml new file mode 100644 index 0000000000..f48489a563 --- /dev/null +++ b/documentation/ref-manual/introduction.xml @@ -0,0 +1,556 @@ + %poky; ] > + + +Introduction + +
+ Introduction + + + This manual provides reference information for the current release of the Yocto Project. + The Yocto Project is an open-source collaboration project focused on embedded Linux + developers. + Amongst other things, the Yocto Project uses the OpenEmbedded build system, which + is based on the Poky project, to construct complete Linux images. + You can find complete introductory and getting started information on the Yocto Project + by reading the + Yocto Project Quick Start. + For task-based information using the Yocto Project, see the + Yocto Project Development Manual + and the Yocto Project Linux Kernel Development Manual. + For Board Support Package (BSP) structure information, see the + Yocto Project Board Support Package (BSP) Developer's Guide. + You can find information on tracing and profiling in the + Yocto Project Profiling and Tracing Manual. + For information on BitBake, which is the task execution tool the + OpenEmbedded build system is based on, see the + BitBake User Manual. + Finally, you can also find lots of Yocto Project information on the + Yocto Project website. + +
+ +
+ Documentation Overview + + This reference manual consists of the following: + + + Using the Yocto Project: + Provides an overview of the components that make up the Yocto Project + followed by information about debugging images created in the Yocto Project. + + + A Closer Look at the Yocto Project Development Environment: + Provides a more detailed look at the Yocto Project development + environment within the context of development. + + + Technical Details: + Describes fundamental Yocto Project components as well as an explanation + behind how the Yocto Project uses shared state (sstate) cache to speed build time. + + + Migrating to a Newer Yocto Project Release: + Describes release-specific information that helps you move from + one Yocto Project Release to another. + + + Directory Structure: + Describes the + Source Directory created + either by unpacking a released Yocto Project tarball on your host development system, + or by cloning the upstream + Poky Git repository. + + + Classes: + Describes the classes used in the Yocto Project. + + Images: + Describes the standard images that the Yocto Project supports. + + + Features: + Describes mechanisms for creating distribution, machine, and image + features during the build process using the OpenEmbedded build system. + + Variables Glossary: + Presents most variables used by the OpenEmbedded build system, which + uses BitBake. + Entries describe the function of the variable and how to apply them. + + + Variable Context: + Provides variable locality or context. + + FAQ: + Provides answers for commonly asked questions in the Yocto Project + development environment. + + Contributing to the Yocto Project: + Provides guidance on how you can contribute back to the Yocto + Project. + + +
+ + +
+System Requirements + + For general Yocto Project system requirements, see the + "What You Need and How You Get It" section + in the Yocto Project Quick Start. + The remainder of this section provides details on system requirements + not covered in the Yocto Project Quick Start. + + +
+ Supported Linux Distributions + + + Currently, the Yocto Project is supported on the following + distributions: + + + Yocto Project releases are tested against the stable Linux + distributions in the following list. + The Yocto Project should work on other distributions but + validation is not performed against them. + + + + In particular, the Yocto Project does not support + and currently has no plans to support + rolling-releases or development distributions due to their + constantly changing nature. + We welcome patches and bug reports, but keep in mind that + our priority is on the supported platforms listed below. + + + + If you encounter problems, please go to + Yocto Project Bugzilla + and submit a bug. + We are interested in hearing about your experience. + + + + + Ubuntu 12.04 (LTS) + Ubuntu 13.10 + Ubuntu 14.04 (LTS) + + Fedora release 19 (Schrödinger's Cat) + Fedora release 20 (Heisenbug) + + CentOS release 6.4 + CentOS release 6.5 + + Debian GNU/Linux 7.0 (Wheezy) + Debian GNU/Linux 7.1 (Wheezy) + Debian GNU/Linux 7.2 (Wheezy) + Debian GNU/Linux 7.3 (Wheezy) + Debian GNU/Linux 7.4 (Wheezy) + + openSUSE 12.2 + openSUSE 12.3 + openSUSE 13.1 + + + + + While the Yocto Project Team attempts to ensure all Yocto Project + releases are one hundred percent compatible with each officially + supported Linux distribution, instances might exist where you + encounter a problem while using the Yocto Project on a specific + distribution. + For example, the CentOS 6.4 distribution does not include the + Gtk+ 2.20.0 and PyGtk 2.21.0 (or higher) packages, which are + required to run + Hob. + +
+ +
+ Required Packages for the Host Development System + + + The list of packages you need on the host development system can + be large when covering all build scenarios using the Yocto Project. + This section provides required packages according to + Linux distribution and function. + + +
+ Ubuntu and Debian + + + The following list shows the required packages by function + given a supported Ubuntu or Debian Linux distribution: + + Essentials: + Packages needed to build an image on a headless + system: + + $ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL; + + Graphical and Eclipse Plug-In Extras: + Packages recommended if the host system has graphics + support or if you are going to use the Eclipse + IDE: + + $ sudo apt-get install libsdl1.2-dev xterm + + Documentation: + Packages needed if you are going to build out the + Yocto Project documentation manuals: + + $ sudo apt-get install make xsltproc docbook-utils fop dblatex xmlto + + ADT Installer Extras: + Packages needed if you are going to be using the + Application Development Toolkit (ADT) Installer: + + $ sudo apt-get install autoconf automake libtool libglib2.0-dev + + + +
+ +
+ Fedora Packages + + + The following list shows the required packages by function + given a supported Fedora Linux distribution: + + Essentials: + Packages needed to build an image for a headless + system: + + $ sudo yum install &FEDORA_HOST_PACKAGES_ESSENTIAL; + + Graphical and Eclipse Plug-In Extras: + Packages recommended if the host system has graphics + support or if you are going to use the Eclipse + IDE: + + $ sudo yum install SDL-devel xterm perl-Thread-Queue + + Documentation: + Packages needed if you are going to build out the + Yocto Project documentation manuals: + + $ sudo yum install make docbook-style-dsssl docbook-style-xsl \ + docbook-dtds docbook-utils fop libxslt dblatex xmlto + + ADT Installer Extras: + Packages needed if you are going to be using the + Application Development Toolkit (ADT) Installer: + + $ sudo yum install autoconf automake libtool glib2-devel + + + +
+ +
+ openSUSE Packages + + + The following list shows the required packages by function + given a supported openSUSE Linux distribution: + + Essentials: + Packages needed to build an image for a headless + system: + + $ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL; + + Graphical and Eclipse Plug-In Extras: + Packages recommended if the host system has graphics + support or if you are going to use the Eclipse + IDE: + + $ sudo zypper install libSDL-devel xterm + + Documentation: + Packages needed if you are going to build out the + Yocto Project documentation manuals: + + $ sudo zypper install make fop xsltproc dblatex xmlto + + ADT Installer Extras: + Packages needed if you are going to be using the + Application Development Toolkit (ADT) Installer: + + $ sudo zypper install autoconf automake libtool glib2-devel + + + +
+ +
+ CentOS Packages + + + The following list shows the required packages by function + given a supported CentOS Linux distribution: + Depending on the CentOS version you are using, other requirements + and dependencies might exist. + For details, you should look at the CentOS sections on the + Poky/GettingStarted/Dependencies + wiki page. + + + Essentials: + Packages needed to build an image for a headless + system: + + $ sudo yum install &CENTOS_HOST_PACKAGES_ESSENTIAL; + + Graphical and Eclipse Plug-In Extras: + Packages recommended if the host system has graphics + support or if you are going to use the Eclipse + IDE: + + $ sudo yum install SDL-devel xterm + + Documentation: + Packages needed if you are going to build out the + Yocto Project documentation manuals: + + $ sudo yum install make docbook-style-dsssl docbook-style-xsl \ + docbook-dtds docbook-utils fop libxslt dblatex xmlto + + ADT Installer Extras: + Packages needed if you are going to be using the + Application Development Toolkit (ADT) Installer: + + $ sudo yum install autoconf automake libtool glib2-devel + + + +
+
+ +
+ Required Git, tar, and Python Versions + + + In order to use the build system, your host development system + must meet the following version requirements for Git, tar, and + Python: + + Git 1.7.5 or greater + tar 1.24 or greater + Python 2.7.3 or greater not including + Python 3.x, which is not supported. + + + + + If your host development system does not meet all these requirements, + you can resolve this by installing a buildtools + tarball that contains these tools. + You can get the tarball one of two ways: download a pre-built + tarball or use BitBake to build the tarball. + + +
+ Downloading a Pre-Built <filename>buildtools</filename> Tarball + + + Downloading and running a pre-built buildtools installer is + the easiest of the two methods by which you can get these tools: + + + Locate and download the *.sh at + . + + + Execute the installation script. + Here is an example: + + $ sh poky-eglibc-x86_64-buildtools-tarball-x86_64-buildtools-nativesdk-standalone-&DISTRO;.sh + + During execution, a prompt appears that allows you to + choose the installation directory. + For example, you could choose the following: + + /home/your-username/buildtools + + + + Source the tools environment setup script by using a + command like the following: + + $ source /home/your-username/buildtools/environment-setup-i586-poky-linux + + Of course, you need to supply your installation directory and be + sure to use the right file (i.e. i585 or x86-64). + + + After you have sourced the setup script, + the tools are added to PATH + and any other environment variables required to run the + tools are initialized. + The results are working versions versions of Git, tar, + Python and chrpath. + + + +
+ +
+ Building Your Own <filename>buildtools</filename> Tarball + + + Building and running your own buildtools installer applies + only when you have a build host that can already run BitBake. + In this case, you use that machine to build the + .sh file and then + take steps to transfer and run it on a + machine that does not meet the minimal Git, tar, and Python + requirements. + + + + Here are the steps to take to build and run your own + buildtools installer: + + + On the machine that is able to run BitBake, + be sure you have set up your build environment with + the setup script + (&OE_INIT_FILE; + or + oe-init-build-env-memres). + + + Run the BitBake command to build the tarball: + + $ bitbake buildtools-tarball + + + The + SDKMACHINE + variable in your local.conf file + determines whether you build tools for a 32-bit + or 64-bit system. + + Once the build completes, you can find the + .sh file that installs + the tools in the tmp/deploy/sdk + subdirectory of the + Build Directory. + The installer file has the string "buildtools" + in the name. + + + Transfer the .sh file from the + build host to the machine that does not meet the + Git, tar, or Python requirements. + + + On the machine that does not meet the requirements, + run the .sh file + to install the tools. + Here is an example: + + $ sh poky-eglibc-x86_64-buildtools-tarball-x86_64-buildtools-nativesdk-standalone-&DISTRO;.sh + + During execution, a prompt appears that allows you to + choose the installation directory. + For example, you could choose the following: + + /home/your-username/buildtools + + + + Source the tools environment setup script by using a + command like the following: + + $ source /home/your-username/buildtools/environment-setup-i586-poky-linux + + Of course, you need to supply your installation directory and be + sure to use the right file (i.e. i585 or x86-64). + + + After you have sourced the setup script, + the tools are added to PATH + and any other environment variables required to run the + tools are initialized. + The results are working versions versions of Git, tar, + Python and chrpath. + + + +
+
+
+ +
+ Obtaining the Yocto Project + + The Yocto Project development team makes the Yocto Project available through a number + of methods: + + Source Repositories: + Working from a copy of the upstream + poky repository is the + preferred method for obtaining and using a Yocto Project + release. + You can view the Yocto Project Source Repositories at + . + In particular, you can find the + poky repository at + . + + Releases: Stable, tested + releases are available as tarballs through + . + Nightly Builds: These + tarball releases are available at + . + These builds include Yocto Project releases, meta-toolchain + tarball installation scripts, and experimental builds. + + Yocto Project Website: You can + find tarball releases of the Yocto Project and supported BSPs + at the + Yocto Project website. + Along with these downloads, you can find lots of other + information at this site. + + + +
+ +
+ Development Checkouts + + Development using the Yocto Project requires a local + Source Directory. + You can set up the Source Directory by cloning a copy of the upstream + poky Git repository. + For information on how to do this, see the + "Getting Set Up" + section in the Yocto Project Development Manual. + +
+ +
+ -- cgit v1.2.3-54-g00ecf