3
votes

I'm working on AOSP 4.0.4 branch and doing some customizations for the PandaBoard platform. I was looking at the ARM cross-toolchains being used to build the Android filesystem images, and I see 2 major variants.

arm-eabi-4.x (set in ARM_EABI_TOOLCHAIN env var)
arm-linux-androideabi-4.x (set in ANDROID_EABI_TOOLCHAIN env var)

I have searched a lot of places, and could not find any information regarding the toolchains.

  1. By the naming convention, I'm guessing the following - are these correct ?

    • arm-eabi- is a bare-metal toolchain
    • arm-linux-androideabi- is the one used to build all the native code in AFS linked against bionic libc as well as the toolchain used for the NDK.
  2. Could someone give me examples of code in the AOSP tree using the bare-metal toolchain (other than for u-boot, x-loader, kernel - all of which are built in a separate tree) ?

  3. I'm going to be doing minor modifications to these toolchains, and hence require rebuilding them. Could someone point me to the repositories and build instructions for these toolchains ?

1
You would be better off asking in the android-building or android-platform mailing lists, I believe.Ehtesh Choudhury

1 Answers

0
votes
  1. Yes you are right. arm-eabi- is a bare metal toolchain and used to build u-boot for instance.

  2. I am not sure if there is any

  3. I could not find arm-linux-androideabi-4.x to be precise but you may have a look at this link: https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/

I hope it helps :)