diff --git a/documentation/sdk-manual/sdk-working-projects.xml b/documentation/sdk-manual/sdk-working-projects.xml
index 2e232a5041..7aa43b3921 100644
--- a/documentation/sdk-manual/sdk-working-projects.xml
+++ b/documentation/sdk-manual/sdk-working-projects.xml
@@ -21,202 +21,204 @@
Once you have a suitable
cross-development toolchain
- installed, it is very easy to develop a project outside of the
+ installed, it is very easy to develop a project using the
+ GNU Autotools-based
+ workflow, which is outside of the
OpenEmbedded build system.
- This section presents a simple "Helloworld" example that shows how
- to set up, compile, and run the project.
-
-
-
- Passing Host Options
-
-
- For an Autotools-based project, you can use the cross-toolchain
- by just passing the appropriate host option to
- configure.sh.
- The host option you use is derived from the name of the
- environment setup script found in the directory in which you
- installed the cross-toolchain.
- For example, the host option for an ARM-based target that uses
- the GNU EABI is armv5te-poky-linux-gnueabi.
- You will notice that the name of the script is
- environment-setup-armv5te-poky-linux-gnueabi.
- Thus, the following command works to update your project and
- rebuild it using the appropriate cross-toolchain tools:
-
+
+ For an Autotools-based project, you can use the
+ cross-toolchain by just passing the appropriate host
+ option to configure.sh.
+ The host option you use is derived from the name of the
+ environment setup script found in the directory in which you
+ installed the cross-toolchain.
+ For example, the host option for an ARM-based target that uses
+ the GNU EABI is
+ armv5te-poky-linux-gnueabi.
+ You will notice that the name of the script is
+ environment-setup-armv5te-poky-linux-gnueabi.
+ Thus, the following command works to update your project
+ and rebuild it using the appropriate cross-toolchain tools:
+
$ ./configure --host=armv5te-poky-linux-gnueabi \
--with-libtool-sysroot=sysroot_dir
-
-
- If the configure script results in
- problems recognizing the
- --with-libtool-sysroot=sysroot-dir
- option, regenerate the script to enable the support by
- doing the following and then run the script again:
-
+
+
+ If the configure script results in
+ problems recognizing the
+ --with-libtool-sysroot=sysroot-dir
+ option, regenerate the script to enable the support by
+ doing the following and then run the script again:
+
$ libtoolize --automake
$ aclocal -I ${OECORE_TARGET_SYSROOT}/usr/share/aclocal [-I dir_containing_your_project-specific_m4_macros]
$ autoconf
$ autoheader
$ automake -a
+
+
+
+
+ Make and Install the Project:
+ These two commands generate and install the project
+ into the destination directory:
+
+ $ make
+ $ make install DESTDIR=./tmp
-
-
-
+ This next command is a simple way to verify the
+ installation of your project.
+ Running the command prints the architecture on which
+ the binary file can run.
+ This architecture should be the same architecture that
+ the installed cross-toolchain supports.
+
+ $ file ./tmp/usr/local/bin/hello
+
+
+
+ Execute Your Project:
+ To execute the project in the shell, simply enter
+ the name.
+ You could also copy the binary to the actual target
+ hardware and run the project there as well:
+
+ $ ./hello
+
+ As expected, the project displays the "Hello World!"
+ message.
+
+
+