aboutsummaryrefslogtreecommitdiff
path: root/docs/00_introduction.dox
diff options
context:
space:
mode:
authorMichalis Spyrou <michalis.spyrou@arm.com>2017-10-04 15:40:38 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:35:24 +0000
commit6e52ba3af3c0c22de6d340b18a8e186c4f362005 (patch)
tree8b9138bc9123fa5e8d83ce6285b94c1fc7309d34 /docs/00_introduction.dox
parentecfd4d318fe53cb508c988b33dd2f9907dbb2a36 (diff)
downloadComputeLibrary-6e52ba3af3c0c22de6d340b18a8e186c4f362005.tar.gz
COMPMID-417 Use aarch64-elf and arm-eabi toolchains
Change toolchain for arm64-v8a and armv7a and disable examples when building for bare_metal. Change-Id: I09c22cc9aad4d32a8e521c36fec98acad2b4d855 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/90207 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'docs/00_introduction.dox')
-rw-r--r--docs/00_introduction.dox28
1 files changed, 24 insertions, 4 deletions
diff --git a/docs/00_introduction.dox b/docs/00_introduction.dox
index 767b9025ce..a418ac28bf 100644
--- a/docs/00_introduction.dox
+++ b/docs/00_introduction.dox
@@ -636,14 +636,34 @@ And finally to run the example:
adb shell /data/local/tmp/neon_convolution_aarch64
adb shell /data/local/tmp/cl_convolution_aarch64
-@subsection S3_4_windows_host Building on a Windows host system
+@subsection S3_4_bare_metal Building for bare metal
+
+For bare metal, the library was successfully built using linaros's latest (gcc-linaro-6.3.1-2017.05) bare metal toolchains:
+ - arm-eabi for armv7a
+ - aarch64-elf for arm64-v8a
+
+Download linaro for <a href="https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/arm-eabi/">armv7a</a> and <a href="https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-elf/">arm64-v8a</a>.
+
+@note Make sure to add the toolchains to your PATH: export PATH=$PATH:$MY_TOOLCHAINS/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-elf/bin:$MY_TOOLCHAINS/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin
+
+@subsubsection S3_4_1_library How to build the library ?
+
+To cross-compile the library with NEON support for baremetal arm64-v8a:
+
+ scons Werror=1 -j8 debug=0 neon=1 opencl=0 os=bare_metal arch=arm64-v8a build=cross_compile cppthreads=0 openmp=0 standalone=1
+
+@subsubsection S3_4_2_examples How to manually build the examples ?
+
+Examples are disabled when building for bare metal. If you want to build the examples you need to provide a custom bootcode depending on the target architecture and link against the compute library. More information about bare metal bootcode can be found <a href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0527a/index.html">here</a>.
+
+@subsection S3_5_windows_host Building on a Windows host system
Using `scons` directly from the Windows command line is known to cause
problems. The reason seems to be that if `scons` is setup for cross-compilation
it gets confused about Windows style paths (using backslashes). Thus it is
recommended to follow one of the options outlined below.
-@subsubsection S3_4_1_ubuntu_on_windows Bash on Ubuntu on Windows
+@subsubsection S3_5_1_ubuntu_on_windows Bash on Ubuntu on Windows
The best and easiest option is to use
<a href="https://msdn.microsoft.com/en-gb/commandline/wsl/about">Ubuntu on Windows</a>.
@@ -651,7 +671,7 @@ This feature is still marked as *beta* and thus might not be available.
However, if it is building the library is as simple as opening a *Bash on
Ubuntu on Windows* shell and following the general guidelines given above.
-@subsubsection S3_4_2_cygwin Cygwin
+@subsubsection S3_5_2_cygwin Cygwin
If the Windows subsystem for Linux is not available <a href="https://www.cygwin.com/">Cygwin</a>
can be used to install and run `scons`. In addition to the default packages
@@ -664,7 +684,7 @@ compiler is included in the Android standalone toolchain. After everything has
been set up in the Cygwin terminal the general guide on building the library
can be followed.
-@subsection S3_5_cl_stub_library The OpenCL stub library
+@subsection S3_6_cl_stub_library The OpenCL stub library
In the opencl-1.2-stubs folder you will find the sources to build a stub OpenCL library which then can be used to link your application or arm_compute against.