Skip to main content.

1. ELDK 5.1 Documentation


Table of contents:

1.1. Author

This document was written by Wolfgang Denk (wd {at} denx {dot} de).

1.2. Available versions

ELDK v5.1:
released on Sun Dec 11, 2011
Git tag: "eldk-5.1"
ELDK v5.0:
released on Sun May 22, 2011
Git tag: "eldk-5.0"

This document covers the most recent version.

1.3. Supported Host Systems

ELDK v5.1 can be installed and run on any recent Linux distribution running on x86 (i686) and x86_64 systems.

Note: 64-bit hosts require a compatibility layer; please see the FAQ for details.

1.4. Supported Target Architectures

At the moment the following target architectures are supported:

 Target Architecture  Purpose
armv4t Generic ARM target for the ARMv4T architecture
(StrongARM, ARM7TDMI and ARM9TDMI processors
armv5te Generic ARM target for the ARMv5TE architecture
(ARM9E, ARM10E, XScale processors)
Similar to the "arm" target in older versions of the ELDK
armv6 Generic ARM target for the ARMv6 architecture
(ARM11 processors)
armv7a Generic ARM target for the ARMv7-A architecture
(Cortex-A5, -A8, -A9, -A15 processors)
Similar to the "armVFP" target in older versions of the ELDK
mips Generic MIPS target for the MIPS32 architecture
Similar to a combination of the "mips_4KC" and "mips_4KCle" targets in older versions of the ELDK
powerpc Generic PowerPC target with FPU support
Similar to the "ppc_6xx" target in older versions of the ELDK
powerpc-softfloat Generic PowerPC target for FPU-less systems like MPC8308 etc.
Similar to the "ppc_8xx" target in older versions of the ELDK
powerpc-4xx Generic PowerPC target with FPU support for PPC4xx processors,
similar to the "ppc_4xxFP" target in older versions of the ELDK
powerpc-4xx-softfloat Generic PowerPC target for FPU-less PPC4xx processors,
similar to the "ppc_4xx" target in older versions of the ELDK

1.5. Supported Target Configurations

ELDK v5.1 supports a number of different target configurations. These include different sets of target tools and target libraries depending on the primary usage mode of the target system. At this point of time the following configurations are available:

Image Name Purpose
minimal A small image just capable of allowing a device to boot.
minimal-mtdutils A "minimal" image that also has support for the Minimal MTD Utilities, which let the user interact with the MTD subsystem in the kernel to perform operations on flash devices.
minimal-dev A "minimal" image suitable for development work.
base A console-only image that fully supports the target device hardware.
basic A foundational basic image without support for X that can be reasonably used for customization.
core An X11 image with simple applications such as terminal, editor, and file manager.
clutter An image with support for the Open GL-based toolkit Clutter, which enables development of rich and animated graphical user interfaces.
lsb A "basic" image suitable for implementations that conform to Linux Standard Base (LSB).
lsb-dev A "lsb" image that is suitable for development work.
lsb-sdk A "lsb" image that includes everything in meta-toolchain but also includes development headers and libraries to form a complete standalone SDK.
sato An image with Sato support, a mobile environment and visual style that works well with mobile devices. The image supports X11 with a Sato theme and Pimlico applications and also contains terminal, editor, and file manager.
sato-dev A "sato" image suitable for development that also includes a native toolchain and libraries needed to build applications on the device itself. The image also includes testing and profiling tools as well as debug symbols.
sato-sdk A "sato" image that also includes development headers and libraries to form a complete standalone SDK.
qte-sdk A Qt Embedded based image that also includes development headers and libraries to form a complete standalone SDK.

For details, please see Appendix D. Reference: Images of The Yocto Project Reference Manual .

There are two different environments for GUI oriented systems:

1.6. Download

1.6.1. Binaries

Ready-to-use binaries of ELDK v5.1 are available on our FTP server in the ftp://ftp.denx.de/pub/eldk/5.1/ directory.

On the FTP server you can find:

To install ELDK v5.1 for a specific target architecture please download at least the install script, the "target.conf" file and the images you want to install.

For example, for a installation of the GMAE/Sato configuration of the tool chain and both the "minimal" and "sato-sdk" root file systems for armv7a targets you would download the following files:

$ mkdir eldk-download
$ cd eldk-download
$ mkdir -p targets/armv7a
$ wget ftp://ftp.denx.de/pub/eldk/5.1/install.sh
$ cd targets/armv7a
$ wget ftp://ftp.denx.de/pub/eldk/5.1/targets/armv7a/target.conf
$ wget ftp://ftp.denx.de/pub/eldk/5.1/targets/armv7a/eldk-eglibc-i686-arm-toolchain-gmae-5.1.tar.bz2
$ wget ftp://ftp.denx.de/pub/eldk/5.1/targets/armv7a/core-image-minimal-generic-armv7a.tar.gz
$ wget ftp://ftp.denx.de/pub/eldk/5.1/targets/armv7a/core-image-sato-sdk-generic-armv7a.tar.gz

Make sure to keep the same directory structure on your system, as this is what the install script expects.

Note that it is also an excellent idea to download the file with the SHA256 checksums so you can verify the integrity of your downloads using the "sha256sum -c" command:

$ cd eldk-download/targets/armv7a
$ wget ftp://ftp.denx.de/pub/eldk/5.1/targets/armv7a/armv7a.sha256
$ sha256sum -c armv7a.sha256
eldk-eglibc-i686-arm-toolchain-gmae-5.1.tar.bz2: OK
core-image-minimal-generic-armv7a.tar.gz: OK
core-image-sato-sdk-generic-armv7a.tar.gz: OK
target.conf: OK
...

1.6.2. Source Code

The source code and all needed tools to build ELDK yourself from scratch are available from our git repository, see section 2. Git Repository Setup.

1.7. Installation

In principle you can install ELDK v5.1 by just unpacking the provided tarballs. There are however a few distinctive requirements that have to be kept in mind:

For the average user we recommend to use the install script which tries to hide these complexities and to provide a simple user interface:

install.sh [-D] [-d <dest_dir>] [-a <host_arch>] [-s <sdk_images> ] [-r <rfs_images> ] [<target>]
install.sh -l [<target>]
install.sh -h
Options:
-D:
Dry-run: display commands, but don't actually execute them.
-a host_arch:
Select the SDK host architecture. Chose one of 'i686' or 'x86_64". Defaults to "i686". (at the moment only the 32 bit version of the packages is provided on the FTP server)
-d dest_dir:
Destination defaults to "/opt/eldk-5.1"; you can override it here but you will need to make software 'think' that it is installed into the default location (use symlink or namespaces or ...) Please make sure to read the comments above.
-h:
Print help message.
-l:
List the SDK and RFS images that are available for the selected target architecture.
-s sdk_images:
Select SDK image. Chose one of 'gmae', 'qte', or '-' for none. Defaults to "gmae".
-r rfs_images:
Select list of RFS images. Chose one or more of 'minimal', 'minimal-mtdutils', 'minimal-dev', 'base', 'basic', 'core', 'clutter', 'lsb', 'lsb-dev', 'lsb-sdk', 'sato', 'sato-dev', 'sato-sdk', 'qte-sdk', or '-' for none. Defaults to all vailable.
target:
selects the target architecture and defaults to "powerpc"

1.7.1. Examples

1.8. Origin

Release 5.1 of our Embedded Linux Development Kit (ELDK) is based on Version "Yocto 1.1" (git release tag "edison-6.0") of the Yocto Project.

The Yocto Project is an open-source collaboration project which is driven by the Linux Foundation. It targets x86, ARM, MIPS, and Power Architecture based systems. The Poky platform builder is used for development and building, which in turn is derived from and intimately connected with the OpenEmbedded project.

1. ELDK 5.1 Documentation 2. Git Repository Setup
Home Next