This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See crosstool-NG for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Yann, Arnaud, On Mon, Jun 17, 2013 at 3:15 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > Arnaud, All, > > On 2013-06-05 12:07 -0700, gabx spake thusly: >> I build Android ROM from AOSP for mobile device, LG google nexus 4 >> (armv7-a). >> With android come several prebuilts/gcc/linux-86/arm toolchains named >> "arm-eabi-4.7" and "arm-linux-androideabi-4.7". >> >> I build my own toolchain which name is "arm-cortexa9_neon-linux-gnueabi" >> (cortex-a9) as CPU & TUNE and neon as FPU. >> >> I am a little confused about all these different names. The out folders from >> my built toolchaine are roughly similar to the androideabi prebuilt ones. Is >> the "gnueabi" and "androideabi" only a name specification (I understand >> android is not gnu) and a licence difference with same binaries/lib, or is >> there a real difference for the built outputs ? >> What about the arm-eabi ? Here again folders "look" quite similar to my >> toolchain, but why arm-eabi AND >> arm-linux-androideabi ? > > Those names are what is called a tuple. > > A tuple defines a complete system. It is split in three parts, separated > by hyphens (dashes): > > - arch-vendor-abi > - arch-vendor-os-abi > > For both tuple types: > - arch, the hardware architecture: arm, armeb, armv6, i686, mips, > powerpc, lapha... > - vendor, identifies the vendor (or provider) of the toolchain, and is > almost free form (but shall contain neither space nor dash, obviously), > usualy something like: unknown, pc > > For the three-part tuples: > - abi, defines the ABI of the system: elf, eabi... > > For the four-part tuples: > - os, which defines the /kernel/ of the system. There are not many > supoprted, the most common one being: linux > - abi, the ABI of the system, the most comon being: gnu, gnueabi, > uclibc, uclibcgnueabi, androideabi... > > The three-part tuples are mostly used for bare-metal, that is system > with no kernels at all (eg. bootloaders, or special applications running > directly on the CPU without a kernel). > > Currently, crosstool-NG does not support generating toolchains targeting > Android. With some trickery, you could turn a arm-unknown-linux-gnueabi, > or an arm-unknown-linux-uclibcgnueabi, or an arm-ubknown-eabi to > generate code for Android, but it's not really easy. In the end, the host tuple would be arm-linux-androideabi, but there are other toolchains in the android build system for different purposes: ---------- quote ---------- The Android toolchain supports the following targets: a. arm-linux-androideabi b. arm-eabi (for Android kernel) c. arm-newlib-eabi (for runnng gcc regression tests) d. i[3456]86-*-linux-gnu, x86_64-*-linux-gnu (for x86 targets) ---------- /quote ---------- from: https://android.googlesource.com/toolchain/build/+/HEAD/README I think a better place to start for doing any work with the android toolchain, is by starting there with the toolchain/manifest repo: $ mkdir $HOME/android-toolchain $ cd $HOME/android-toolchain $ repo init -u https://android.googlesource.com/toolchain/manifest -b master $ repo sync -j<replace this with # of dl jobs> Same workflow as working with the android platform build. I think it would take more work then it's worth to build a toolchain for bionic with crosstool-ng, then it is to work with the existing tools provided by google. On the other hand, I have made cross toolchains with gcc, specifically for kernel builds, and arm-unknown-linux-gnueabi works fine for that (cortex-a8/armv7, in my experience), but at that point, you could just grab mentor's (67, not 68!) or linaro's arm gnueabi toolchains and they would work fine for that purpose as well. Anyways, I hope that is helpful info. -Bryan > Regards, > Yann E. MORIN. > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------' > > -- > For unsubscribe information see http://sourceware.org/lists.html#faq > -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |