Difference between revisions of "Talk:Bering-uClibc 5.x - Developer Guide - Adding a Hardware Architecture Variant"

From bering-uClibc
Jump to: navigation, search
(Created)
 
(Added response (to my own question...))
 
Line 1: Line 1:
 
===GNU_TARGET_NAME Setting===
 
===GNU_TARGET_NAME Setting===
 
It's not clear to me how critical the value of GNU_TARGET_NAME is. Is "<tt>armv6-unknown-linux-'''uclibc'''</tt>" the right value or should we be using "<tt>armv6-unknown-linux-'''gnueabi'''</tt>" or something different again? Looking at e.g. <code class="filename">source/$GNU_TARGET_NAME/toolchain/binutils-2.21.1/configure</code> I'm seeing checks for target names like "<tt>arm*-*-linux-gnueabi</tt>" whereas none of the checks match a "<tt>-uclibc</tt>" suffix. [[User:Davidmbrooke|Davidmbrooke]] 18:05, 27 March 2012 (UTC)
 
It's not clear to me how critical the value of GNU_TARGET_NAME is. Is "<tt>armv6-unknown-linux-'''uclibc'''</tt>" the right value or should we be using "<tt>armv6-unknown-linux-'''gnueabi'''</tt>" or something different again? Looking at e.g. <code class="filename">source/$GNU_TARGET_NAME/toolchain/binutils-2.21.1/configure</code> I'm seeing checks for target names like "<tt>arm*-*-linux-gnueabi</tt>" whereas none of the checks match a "<tt>-uclibc</tt>" suffix. [[User:Davidmbrooke|Davidmbrooke]] 18:05, 27 March 2012 (UTC)
 +
:It's clear now - this is quite critical! Unless GNU_TARGET_NAME includes the string "<tt>gnueabi</tt>" then the GNU utilities (including GCC) will be configured for the old ARM '''O'''ABI rather than for the '''E'''ABI (which is what we want - especially if we state that the kernel will be compiled to use EABI (CONFIG_AEABI)). More info [http://bradfordembedded.blogspot.co.uk/2011/02/pick-arm-abi-when-building-gcc.html here].
 +
:On that basis it seems that "<tt>armv6-unknown-linux-'''uclibcgnueabi'''</tt>" is a good choice. [[User:Davidmbrooke|Davidmbrooke]] 19:05, 31 March 2012 (UTC)

Latest revision as of 19:05, 31 March 2012

GNU_TARGET_NAME Setting

It's not clear to me how critical the value of GNU_TARGET_NAME is. Is "armv6-unknown-linux-uclibc" the right value or should we be using "armv6-unknown-linux-gnueabi" or something different again? Looking at e.g. source/$GNU_TARGET_NAME/toolchain/binutils-2.21.1/configure I'm seeing checks for target names like "arm*-*-linux-gnueabi" whereas none of the checks match a "-uclibc" suffix. Davidmbrooke 18:05, 27 March 2012 (UTC)

It's clear now - this is quite critical! Unless GNU_TARGET_NAME includes the string "gnueabi" then the GNU utilities (including GCC) will be configured for the old ARM OABI rather than for the EABI (which is what we want - especially if we state that the kernel will be compiled to use EABI (CONFIG_AEABI)). More info here.
On that basis it seems that "armv6-unknown-linux-uclibcgnueabi" is a good choice. Davidmbrooke 19:05, 31 March 2012 (UTC)