diff options
author | Robert P. J. Day <rpjday@crashcourse.ca> | 2021-05-01 14:09:36 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-05-13 11:28:34 +0100 |
commit | f3a66b53bbdc6dfece2e75d6b2451ffbfbbf7d03 (patch) | |
tree | 9146556fca232dd0c090db06989f0825bf177a74 /documentation/sdk-manual/intro.rst | |
parent | 60c081d9f8371ce3549a22155789f52eb038a091 (diff) | |
download | poky-f3a66b53bbdc6dfece2e75d6b2451ffbfbbf7d03.tar.gz |
sdk-manual: various cleanups to intro.rst
Minutiae including grammar fixes, increased brevity and adding a
proper link to another SDK manual section.
(From yocto-docs rev: 21d6c6fcbae938c256da6e72d6ac8d2ca72d5bc0)
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Reviewed-by: Quentin Schulz <foss@0leil.net>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/sdk-manual/intro.rst')
-rw-r--r-- | documentation/sdk-manual/intro.rst | 48 |
1 files changed, 23 insertions, 25 deletions
diff --git a/documentation/sdk-manual/intro.rst b/documentation/sdk-manual/intro.rst index d966efea77..124d8a8b1f 100644 --- a/documentation/sdk-manual/intro.rst +++ b/documentation/sdk-manual/intro.rst | |||
@@ -8,8 +8,8 @@ eSDK Introduction | |||
8 | ================= | 8 | ================= |
9 | 9 | ||
10 | Welcome to the Yocto Project Application Development and the Extensible | 10 | Welcome to the Yocto Project Application Development and the Extensible |
11 | Software Development Kit (eSDK) manual. This manual provides information | 11 | Software Development Kit (eSDK) manual. This manual |
12 | that explains how to use both the Yocto Project extensible and standard | 12 | explains how to use both the Yocto Project extensible and standard |
13 | SDKs to develop applications and images. | 13 | SDKs to develop applications and images. |
14 | 14 | ||
15 | .. note:: | 15 | .. note:: |
@@ -25,12 +25,13 @@ SDKs to develop applications and images. | |||
25 | All SDKs consist of the following: | 25 | All SDKs consist of the following: |
26 | 26 | ||
27 | - *Cross-Development Toolchain*: This toolchain contains a compiler, | 27 | - *Cross-Development Toolchain*: This toolchain contains a compiler, |
28 | debugger, and various miscellaneous tools. | 28 | debugger, and various associated tools. |
29 | 29 | ||
30 | - *Libraries, Headers, and Symbols*: The libraries, headers, and | 30 | - *Libraries, Headers, and Symbols*: The libraries, headers, and |
31 | symbols are specific to the image (i.e. they match the image). | 31 | symbols are specific to the image (i.e. they match the image |
32 | against which the SDK was built). | ||
32 | 33 | ||
33 | - *Environment Setup Script*: This ``*.sh`` file, once run, sets up the | 34 | - *Environment Setup Script*: This ``*.sh`` file, once sourced, sets up the |
34 | cross-development environment by defining variables and preparing for | 35 | cross-development environment by defining variables and preparing for |
35 | SDK use. | 36 | SDK use. |
36 | 37 | ||
@@ -48,14 +49,14 @@ time since that path cannot be dynamically altered. This is the reason | |||
48 | for a wrapper around the ``populate_sdk`` and ``populate_sdk_ext`` | 49 | for a wrapper around the ``populate_sdk`` and ``populate_sdk_ext`` |
49 | archives. | 50 | archives. |
50 | 51 | ||
51 | Another feature for the SDKs is that only one set of cross-compiler | 52 | Another feature of the SDKs is that only one set of cross-compiler |
52 | toolchain binaries are produced for any given architecture. This feature | 53 | toolchain binaries are produced for any given architecture. This feature |
53 | takes advantage of the fact that the target hardware can be passed to | 54 | takes advantage of the fact that the target hardware can be passed to |
54 | ``gcc`` as a set of compiler options. Those options are set up by the | 55 | ``gcc`` as a set of compiler options. Those options are set up by the |
55 | environment script and contained in variables such as | 56 | environment script and contained in variables such as |
56 | :term:`CC` and | 57 | :term:`CC` and |
57 | :term:`LD`. This reduces the space needed | 58 | :term:`LD`. This reduces the space needed |
58 | for the tools. Understand, however, that every target still needs a | 59 | for the tools. Understand, however, that every target still needs its own |
59 | sysroot because those binaries are target-specific. | 60 | sysroot because those binaries are target-specific. |
60 | 61 | ||
61 | The SDK development environment consists of the following: | 62 | The SDK development environment consists of the following: |
@@ -118,8 +119,8 @@ The Cross-Development Toolchain | |||
118 | 119 | ||
119 | The :term:`Cross-Development Toolchain` consists | 120 | The :term:`Cross-Development Toolchain` consists |
120 | of a cross-compiler, cross-linker, and cross-debugger that are used to | 121 | of a cross-compiler, cross-linker, and cross-debugger that are used to |
121 | develop user-space applications for targeted hardware. Additionally, for | 122 | develop user-space applications for targeted hardware; in addition, |
122 | an extensible SDK, the toolchain also has built-in ``devtool`` | 123 | the extensible SDK comes with built-in ``devtool`` |
123 | functionality. This toolchain is created by running a SDK installer | 124 | functionality. This toolchain is created by running a SDK installer |
124 | script or through a :term:`Build Directory` that is based on | 125 | script or through a :term:`Build Directory` that is based on |
125 | your metadata configuration or extension for your targeted device. The | 126 | your metadata configuration or extension for your targeted device. The |
@@ -138,21 +139,19 @@ The QEMU Emulator | |||
138 | ----------------- | 139 | ----------------- |
139 | 140 | ||
140 | The QEMU emulator allows you to simulate your hardware while running | 141 | The QEMU emulator allows you to simulate your hardware while running |
141 | your application or image. QEMU is not part of the SDK but is made | 142 | your application or image. QEMU is not part of the SDK but is |
142 | available a number of different ways: | 143 | automatically installed and available if you have done any one of |
144 | the following: | ||
143 | 145 | ||
144 | - If you have cloned the ``poky`` Git repository to create a | 146 | - cloned the ``poky`` Git repository to create a |
145 | :term:`Source Directory` and you have | 147 | :term:`Source Directory` and sourced the environment setup script. |
146 | sourced the environment setup script, QEMU is installed and | ||
147 | automatically available. | ||
148 | 148 | ||
149 | - If you have downloaded a Yocto Project release and unpacked it to | 149 | - downloaded a Yocto Project release and unpacked it to |
150 | create a Source Directory and you have sourced the environment setup | 150 | create a Source Directory and sourced the environment setup |
151 | script, QEMU is installed and automatically available. | 151 | script. |
152 | 152 | ||
153 | - If you have installed the cross-toolchain tarball and you have | 153 | - installed the cross-toolchain tarball and |
154 | sourced the toolchain's setup environment script, QEMU is also | 154 | sourced the toolchain's setup environment script. |
155 | installed and automatically available. | ||
156 | 155 | ||
157 | SDK Development Model | 156 | SDK Development Model |
158 | ===================== | 157 | ===================== |
@@ -202,10 +201,9 @@ You just need to follow these general steps: | |||
202 | 201 | ||
203 | .. note:: | 202 | .. note:: |
204 | 203 | ||
205 | To use the root filesystem in QEMU, you need to extract it. See | 204 | To use the root filesystem in QEMU, you need to extract it. See the |
206 | the " | 205 | ":ref:`sdk-manual/appendix-obtain:extracting the root filesystem`" |
207 | Extracting the Root Filesystem | 206 | section for information on how to do this extraction. |
208 | " section for information on how to extract the root filesystem. | ||
209 | 207 | ||
210 | 3. *Develop and Test your Application:* At this point, you have the | 208 | 3. *Develop and Test your Application:* At this point, you have the |
211 | tools to develop your application. If you need to separately install | 209 | tools to develop your application. If you need to separately install |