summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/ref-manual')
-rw-r--r--documentation/ref-manual/figures/images-sdk.pngbin24595 -> 0 bytes
-rw-r--r--documentation/ref-manual/figures/images.pngbin0 -> 17704 bytes
-rw-r--r--documentation/ref-manual/figures/sdk.pngbin0 -> 17256 bytes
-rw-r--r--documentation/ref-manual/ref-structure.xml5
-rw-r--r--documentation/ref-manual/ref-variables.xml29
-rw-r--r--documentation/ref-manual/technical-details.xml295
6 files changed, 168 insertions, 161 deletions
diff --git a/documentation/ref-manual/figures/images-sdk.png b/documentation/ref-manual/figures/images-sdk.png
deleted file mode 100644
index c124a452a3..0000000000
--- a/documentation/ref-manual/figures/images-sdk.png
+++ /dev/null
Binary files differ
diff --git a/documentation/ref-manual/figures/images.png b/documentation/ref-manual/figures/images.png
new file mode 100644
index 0000000000..09b83c2864
--- /dev/null
+++ b/documentation/ref-manual/figures/images.png
Binary files differ
diff --git a/documentation/ref-manual/figures/sdk.png b/documentation/ref-manual/figures/sdk.png
new file mode 100644
index 0000000000..3dddad37bb
--- /dev/null
+++ b/documentation/ref-manual/figures/sdk.png
Binary files differ
diff --git a/documentation/ref-manual/ref-structure.xml b/documentation/ref-manual/ref-structure.xml
index 1d19ffd07f..6ddecd994d 100644
--- a/documentation/ref-manual/ref-structure.xml
+++ b/documentation/ref-manual/ref-structure.xml
@@ -362,8 +362,9 @@
362 variable points to this directory. 362 variable points to this directory.
363 For more detail on the contents of the <filename>deploy</filename> 363 For more detail on the contents of the <filename>deploy</filename>
364 directory, see the 364 directory, see the
365 "<link linkend='images-and-application-development-sdk'>Images and Application Development SDK</link>" 365 "<link linkend='images-dev-environment'>Images</link>" and
366 section. 366 "<link linkend='sdk-dev-environment'>Application Development SDK</link>"
367 sections.
367 </para> 368 </para>
368 </section> 369 </section>
369 370
diff --git a/documentation/ref-manual/ref-variables.xml b/documentation/ref-manual/ref-variables.xml
index d65733ec4e..714346fc18 100644
--- a/documentation/ref-manual/ref-variables.xml
+++ b/documentation/ref-manual/ref-variables.xml
@@ -780,8 +780,7 @@ Core layer for images cannot be removed
780 <glossdef> 780 <glossdef>
781 <para> 781 <para>
782 Points to the area that the OpenEmbedded build system uses 782 Points to the area that the OpenEmbedded build system uses
783 to place images and their related files created with 783 to place images and their related files.
784 BitBake.
785 By default, this directory resides within the 784 By default, this directory resides within the
786 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> 785 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
787 as <filename>tmp/deploy</filename>. 786 as <filename>tmp/deploy</filename>.
@@ -794,8 +793,9 @@ Core layer for images cannot be removed
794 section. 793 section.
795 For more detail on the contents of the 794 For more detail on the contents of the
796 <filename>deploy</filename> directory, see the 795 <filename>deploy</filename> directory, see the
797 "<link linkend='images-and-application-development-sdk'>Images and Application Development SDK</link>" 796 "<link linkend='images-dev-environment'>Images</link>" and
798 section. 797 "<link linkend='sdk-dev-environment'>Application Development SDK</link>"
798 sections.
799 </para> 799 </para>
800 </glossdef> 800 </glossdef>
801 </glossentry> 801 </glossentry>
@@ -4008,18 +4008,21 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
4008 </glossdef> 4008 </glossdef>
4009 </glossentry> 4009 </glossentry>
4010 4010
4011 <glossentry id='var-TOOLCHAIN_HOSTS_TASKS'><glossterm>TOOLCHAIN_HOSTS_TASKS</glossterm> 4011 <glossentry id='var-TOOLCHAIN_HOST_TASK'><glossterm>TOOLCHAIN_HOST_TASK</glossterm>
4012 <glossdef> 4012 <glossdef>
4013 <para> 4013 <para>
4014 This variable lists packages BitBake uses when it builds 4014 This variable lists packages the OpenEmbedded build system
4015 an SDK installer, which is used to extract and set up a 4015 uses when building an SDK, which contains a
4016 cross-development environment. 4016 cross-development environment.
4017 The packages specified by this variable are part of the 4017 The packages specified by this variable are part of the
4018 toolchain set that runs on the 4018 toolchain set that runs on the
4019 <link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>. 4019 <link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>,
4020 When you build an SDK installer using BitBake, a set of 4020 and each package should usually have the prefix
4021 default tasks apply. 4021 "nativesdk-".
4022 The tasks you specify here are added to those defaults. 4022 When building an SDK using
4023 <filename>bitbake -c populate_sdk &lt;imagename&gt;</filename>,
4024 a default list of packages is set in this variable, but
4025 you can add additional packages to the list.
4023 </para> 4026 </para>
4024 4027
4025 <para> 4028 <para>
@@ -4035,11 +4038,11 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
4035 </glossdef> 4038 </glossdef>
4036 </glossentry> 4039 </glossentry>
4037 4040
4038 <glossentry id='var-TOOLCHAIN_TARGET_TASKS'><glossterm>TOOLCHAIN_TARGET_TASKS</glossterm> 4041 <glossentry id='var-TOOLCHAIN_TARGET_TASK'><glossterm>TOOLCHAIN_TARGET_TASK</glossterm>
4039 <glossdef> 4042 <glossdef>
4040 <para> 4043 <para>
4041 This variable lists packages BitBake uses when it creates 4044 This variable lists packages BitBake uses when it creates
4042 the target part of an SDK installer (i.e. the part built 4045 the target part of an SDK (i.e. the part built
4043 for the target hardware), which includes libraries and 4046 for the target hardware), which includes libraries and
4044 headers. 4047 headers.
4045 </para> 4048 </para>
diff --git a/documentation/ref-manual/technical-details.xml b/documentation/ref-manual/technical-details.xml
index 6ae8ee50e0..97fd629a74 100644
--- a/documentation/ref-manual/technical-details.xml
+++ b/documentation/ref-manual/technical-details.xml
@@ -172,7 +172,7 @@
172 </para> 172 </para>
173 173
174 <para> 174 <para>
175 The generalized Yocto Project Devevelopment Environment consists of 175 The generalized Yocto Project Development Environment consists of
176 several functional areas: 176 several functional areas:
177 <itemizedlist> 177 <itemizedlist>
178 <listitem><para><emphasis>User Configuration:</emphasis> 178 <listitem><para><emphasis>User Configuration:</emphasis>
@@ -797,167 +797,170 @@
797 </para> 797 </para>
798 </section> 798 </section>
799 799
800 <section id='images-and-application-development-sdk'> 800 <section id='images-dev-environment'>
801 <title>Images and Application Development SDK</title> 801 <title>Images</title>
802 802
803 <para> 803 <para>
804 The purpose of using the OpenEmbedded build system is to produce 804 The images produced by the OpenEmbedded build system
805 an image or a Software Development Kit (SDK). 805 are compressed forms of the
806 root filesystems that are ready to boot on a target device.
806 You can see from the main 807 You can see from the main
807 <link linkend='a-closer-look-at-the-yocto-project-development-environment'>Yocto Project Development Environment</link> 808 <link linkend='a-closer-look-at-the-yocto-project-development-environment'>Yocto Project Development Environment</link>
808 figure that the output (shown in red) are images and SDKs. 809 figure that BitBake output in part consists of images.
809 This section is going to look more closely at this output: 810 This section is going to look more closely at this output:
810 <imagedata fileref="figures/images-sdk.png" align="center" width="5in" depth="4in" /> 811 <imagedata fileref="figures/images.png" align="center" width="5in" depth="4in" />
811 </para> 812 </para>
812 813
813 <section id='images-dev-environment'> 814 <para>
814 <title>Images</title> 815 For a list of example images that the Yocto Project provides,
816 the
817 "<link linkend='ref-images'>Images</link>" chapter.
818 </para>
815 819
816 <para> 820 <para>
817 The images produced by BitBake are compressed forms of the 821 Images are written out to the
818 root filesystems that are ready to boot on a target device. 822 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
819 You can see the 823 inside the <filename>deploy/images</filename> folder as shown
820 "<link linkend='ref-images'>Images</link>" chapter for a list 824 in the figure.
821 of example images that the Yocto Project provides. 825 This folder contains any files expected to be loaded on the
822 </para> 826 target device.
827 The
828 <link linkend='var-DEPLOY_DIR'><filename>DEPLOY_DIR</filename></link>
829 variable points to the <filename>deploy</filename> directory.
830 <itemizedlist>
831 <listitem><para><filename>&lt;kernel-image&gt;</filename>:
832 A kernel binary file.
833 The <link linkend='var-KERNEL_IMAGETYPE'><filename>KERNEL_IMAGETYPE</filename></link>
834 variable setting determines the naming scheme for the
835 kernel image file.
836 Depending on that variable, the file could begin with
837 a variety of naming strings.
838 The <filename>deploy/images</filename> directory can
839 contain multiple image files.</para></listitem>
840 <listitem><para><filename>&lt;root-filesystem-image&gt;</filename>:
841 Root filesystems for the target device (e.g.
842 <filename>*.ext3</filename> or <filename>*.bz2</filename>
843 files).
844 The <link linkend='var-IMAGE_FSTYPES'><filename>IMAGE_FSTYPES</filename></link>
845 variable setting determines the root filesystem image
846 type.
847 The <filename>deploy/images</filename> directory can
848 contain multiple root filesystems.</para></listitem>
849 <listitem><para><filename>&lt;kernel-modules&gt;</filename>:
850 Tarballs that contain all the modules used by the
851 kernel.
852 Kernel module tarballs exist for legacy purposes and
853 can be suppressed by setting the
854 <link linkend='var-MODULE_TARBALL_DEPLOY'><filename>MODULE_TARBALL_DEPLOY</filename></link>
855 variable to "0".
856 The <filename>deploy/images</filename> directory can
857 contain multiple kernel module tarballs.
858 </para></listitem>
859 <listitem><para><filename>&lt;bootloaders&gt;</filename>:
860 Bootloaders supporting the image, if applicable to the
861 target machine.
862 The <filename>deploy/images</filename> directory can
863 contain multiple bootloaders.
864 </para></listitem>
865 <listitem><para><filename>&lt;symlinks&gt;</filename>:
866 The <filename>images/deploy</filename> folder contains
867 a symbolic link that points to the most recently built file
868 for each machine.
869 These links might be useful for external scripts that
870 need to obtain the latest version of each file.
871 </para></listitem>
872 </itemizedlist>
873 </para>
874 </section>
823 875
824 <para> 876 <section id='sdk-dev-environment'>
825 Images are kept in the 877 <title>Application Development SDK</title>
826 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
827 inside the <filename>deploy/images</filename> folder as shown
828 in the figure.
829 This folder contains any files expected to be loaded on the
830 target device.
831 The
832 <link linkend='var-DEPLOY_DIR'><filename>DEPLOY_DIR</filename></link>
833 variable points to the <filename>deploy</filename> directory.
834 <itemizedlist>
835 <listitem><para><filename>&lt;image&gt;</filename>:
836 A <filename>*.bin</filename> image file.
837 The <link linkend='var-KERNEL_IMAGETYPE'><filename>KERNEL_IMAGETYPE</filename></link>
838 variable setting determines the naming scheme for the
839 image file.
840 Depending on that variable, the file could begin with
841 a variety of naming strings.
842 The <filename>deploy/images</filename> directory can
843 contain multiple image files.</para></listitem>
844 <listitem><para><filename>&lt;root-filesystem&gt;</filename>:
845 Root filesystems for the target device (e.g.
846 <filename>*.ext3</filename> or <filename>*.bz2</filename>
847 files).
848 The <link linkend='var-IMAGE_FSTYPES'><filename>IMAGE_FSTYPES</filename></link>
849 variable setting determines the root filesystem
850 type.
851 The <filename>deploy/images</filename> directory can
852 contain multiple root filesystems.</para></listitem>
853 <listitem><para><filename>&lt;kernel-modules&gt;</filename>:
854 Tarballs that contain all the modules used by the
855 kernel.
856 Kernel module tarballs exist for legacy purposes and
857 can be suppressed by setting the
858 <link linkend='var-MODULE_TARBALL_DEPLOY'><filename>MODULE_TARBALL_DEPLOY</filename></link>
859 variable to "0".
860 The <filename>deploy/images</filename> directory can
861 contain multiple kernel module tarballs.
862 </para></listitem>
863 <listitem><para><filename>&lt;bootloaders&gt;</filename>:
864 Bootloaders supporting the image.
865 The <filename>deploy/images</filename> directory can
866 contain multiple bootloaders.
867 </para></listitem>
868 <listitem><para><filename>&lt;symlinks&gt;</filename>:
869 The <filename>images/deploy</filename> folder contains
870 a symbolic link for each actual file in the folder.
871 Links exist for all types of files (i.e. images,
872 root filesystems, bootloaders, and kernel module
873 tarballs).
874 The link scheme for images is such that a single link
875 exists for the most recently built image.
876 In addition to that single image link, additional
877 links exist on a one-for-one basis that map to each
878 physical image file.</para></listitem>
879 </itemizedlist>
880 </para>
881 </section>
882 878
883 <section id='sdk-dev-environment'> 879 <para>
884 <title>Application Development SDK</title> 880 In the overview figure of the
881 <link linkend='a-closer-look-at-the-yocto-project-development-environment'>Yocto Project Development Environment</link>
882 the output labeled "Application Development SDK" represents an
883 SDK.
884 This section is going to take a closer look at this output:
885 <imagedata fileref="figures/sdk.png" align="center" width="5in" depth="4in" />
886 </para>
885 887
888 <para>
889 The specific form of this output is a self-extracting
890 SDK installer (<filename>*.sh</filename>) that, when run,
891 installs the SDK image, which consists of a cross-development
892 toolchain, a set of libraries and headers, and an SDK
893 environment setup script.
894 Running this installer essentially sets up your
895 cross-development environment.
896 You can think of the cross-toolchains as the "host" part
897 because they run on the SDK machine.
898 You can think of the libraries and headers as the "target"
899 part because they are built for the target hardware.
900 The setup script is added so that you can initialize the
901 environment before using the tools.
902 </para>
903
904 <note>
886 <para> 905 <para>
887 An Application Development SDK (referred to as an 906 The Yocto Project supports several methods by which you can
888 "SDK installer" in this section) is a self-extracting SDK 907 set up this cross-development environment.
889 installer file (<filename>*.sh</filename>) that, when run, 908 These methods include downloading pre-built SDK installers,
890 installs a cross-development toolchain, a set of libraries 909 building and installing your own SDK installer, or running
891 and headers, and an SDK environment setup script. 910 an Application Development Toolkit (ADT) installer to
892 Running this installer essentially sets up your 911 install not just cross-development toolchains
893 cross-development environment. 912 but also additional tools to help in this type of
894 You can think of the cross-toolchains as the "host" part 913 development.
895 because they run on the SDK machine.
896 You can think of the libraries and headers as the "target"
897 part because they are built for the target hardware.
898 The setup script is added so that you can initialize the
899 environment before using the tools.
900 </para> 914 </para>
901 915
902 <note>
903 <para>
904 The Yocto Project supports several methods by which you can
905 set up this cross-development environment.
906 These methods include downloading pre-built SDK installers,
907 building and installing your own SKD installer, or running
908 an Application Development Toolkit (ADT) installer to
909 install not just cross-development toolchains
910 but also additional tools to help in this type of
911 development.
912 </para>
913
914 <para>
915 For background information on cross-development toolchains
916 in the Yocto Project development environment, see the
917 "<link linkend='cross-development-toolchain-generation'>Cross-Development Toolchain Generation</link>"
918 section.
919 For information on setting up a cross-development
920 environment, see the
921 "<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>"
922 section in the Yocto Project Application Developer's Guide.
923 </para>
924 </note>
925
926 <para> 916 <para>
927 When built using BitBake, the SDK installers are kept in the 917 For background information on cross-development toolchains
928 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> 918 in the Yocto Project development environment, see the
929 inside the <filename>deploy/sdk</filename> folder as shown 919 "<link linkend='cross-development-toolchain-generation'>Cross-Development Toolchain Generation</link>"
930 in the figure at the beginning of this section. 920 section.
931 Several variables exist that help configure these files: 921 For information on setting up a cross-development
932 <itemizedlist> 922 environment, see the
933 <listitem><para><link linkend='var-DEPLOY_DIR'><filename>DEPLOY_DIR</filename></link>: 923 "<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>"
934 Points to the <filename>deploy</filename> 924 section in the Yocto Project Application Developer's Guide.
935 directory.</para></listitem>
936 <listitem><para><link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>:
937 Specifies the architecture of the machine
938 on which the cross-development tools are run to
939 create packages for the target hardware.
940 </para></listitem>
941 <listitem><para><link linkend='var-SDKIMAGE_FEATURES'><filename>SDKIMAGE_FEATURES</filename></link>:
942 Lists the features to include in the libraries.
943 </para></listitem>
944 <listitem><para><link linkend='var-TOOLCHAIN_HOSTS_TASKS'><filename>TOOLCHAIN_HOSTS_TASKS</filename></link>:
945 Lists packages that make up the host
946 part of the SDK installer (i.e. the part that runs on
947 the <filename>SDKMACHINE</filename>).
948 When you use <filename>bitbake sdk_populate</filename>
949 to create the SDK installer, a set of default tasks
950 apply.
951 This variable allows you to add more tasks.
952 </para></listitem>
953 <listitem><para><link linkend='var-TOOLCHAIN_TARGET_TASKS'><filename>TOOLCHAIN_TARGET_TASKS</filename></link>:
954 Lists packages that make up the target part
955 of the SDK installer (i.e. the part built for the
956 target hardware).
957 </para></listitem>
958 </itemizedlist>
959 </para> 925 </para>
960 </section> 926 </note>
927
928 <para>
929 Once built, the SDK installers are written out to the
930 <filename>deploy/sdk</filename> folder inside the
931 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
932 as shown in the figure at the beginning of this section.
933 Several variables exist that help configure these files:
934 <itemizedlist>
935 <listitem><para><link linkend='var-DEPLOY_DIR'><filename>DEPLOY_DIR</filename></link>:
936 Points to the <filename>deploy</filename>
937 directory.</para></listitem>
938 <listitem><para><link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>:
939 Specifies the architecture of the machine
940 on which the cross-development tools are run to
941 create packages for the target hardware.
942 </para></listitem>
943 <listitem><para><link linkend='var-SDKIMAGE_FEATURES'><filename>SDKIMAGE_FEATURES</filename></link>:
944 Lists the features to include in the "target" part
945 of the SDK.
946 </para></listitem>
947 <listitem><para><link linkend='var-TOOLCHAIN_HOST_TASK'><filename>TOOLCHAIN_HOST_TASK</filename></link>:
948 Lists packages that make up the host
949 part of the SDK installer (i.e. the part that runs on
950 the <filename>SDKMACHINE</filename>).
951 When you use
952 <filename>bitbake -c populate_sdk &lt;imagename&gt;</filename>
953 to create the SDK installer, a set of default packages
954 apply.
955 This variable allows you to add more packages.
956 </para></listitem>
957 <listitem><para><link linkend='var-TOOLCHAIN_TARGET_TASK'><filename>TOOLCHAIN_TARGET_TASK</filename></link>:
958 Lists packages that make up the target part
959 of the SDK installer (i.e. the part built for the
960 target hardware).
961 </para></listitem>
962 </itemizedlist>
963 </para>
961 </section> 964 </section>
962</section> 965</section>
963 966