Toolchain For Android
From labs.embinux.org
Release Notes
EMBINUX™ Cross Compiler (ECC) is based on GNU Tools strictly adhering to open source standards. This toolchain is designed for building Android stack.
These release notes give you information about installing toolchain in your system and compiling Android build with it.
This release of ECC contains the following features
- Supports thumb instructions, cortex core, armv7-a
- GCC has been upgraded to 4.4.1 and binutils to 2.19.1
Download & installation
- System requirements
- Linux 2.6 kernel based distributions (Ubuntu 8.x; Fedora 8, 9, 10; RHEL 4, 5; OpenSUSE 11.x)
- Download the toolchain from the following location(s)
For 32 bit host machine ecc-android-crm_g3d7823fa_bb0f1156c-0909-arm-eabi.bin.tgz
For 64 bit host machine ecc-android-crm_g3d823fa_bb0f1156c-0909-arm-eabi_64.bin.tgz
- Toolchain Dependencies
- The MPFR Library On Ubuntu you can install this as,
$ sudo apt-get install libmpfr1ldbl
- Instructions for compiling Android build
- Remove the android toolchain present in prebuilt/linux-x86/toolchain directory
cd $(ANDROID_BUILD)/prebuilt/linux-x86/toolchain rm -rf arm-eabi-4.2.1
- Untar the toolchain in the prebuilt/linux-x86/toolchain directory
For For 32 bit host machine tar xvf ecc-android-crm_g3d7823fa_bb0f1156c-0909-arm-eabi.bin.tgz For 64 bit host machine tar xvf ecc-android-crm_g3d7823fa_bb0f1156c-0909-arm-eabi_64.bin.tgz
- Changes to be made in the android build
- Change toolchian path in Android Build by editing $(ANDROID_BUILD/build/envsetup.sh
export ANDROID_EABI_TOOLCHAIN=$prebuiltdir/toolchain/arm-eabi-4.4.1/bin
- Switch to $(ANDROID_BUILD/build/core/combo directory and edit "linux-arm.mk"
$(combo_target)TOOLS_PREFIX := prebuilt/$(HOST_PREBUILT_TAG)/toolchain/arm-eabi-4.4.1/bin/arm-eabi-
- Switch to $(ANDROID_BUILD/development/pdk/ndk/samples/sample directory and edit Makefile.lib"
ALIB := $(PREBUILT)/toolchain/arm-eabi-4.4.1/lib/gcc/arm-eabi/4.4.1/interwork/libgcc.a
- Compiling the Android build
- Switch to $(ANDROID_BUILD) and build
$(ANDROID_BUILD) # make
NOTE:
- The android build should be the latest build ( Android Donut Build )
- The kernel can be downloaded from http://labs.embinux.org/index.php/Main_Page
- In the root file system, comment the following lines in init.rc
- service vold /system/bin/vold
- socket vold stream 0660 root mount
- This toolchain is tested on beagle
