[Bug 238705] Review Request: avr-gcc - Cross Compiling GNU GCC targeted at avr

bugzilla at redhat.com bugzilla at redhat.com
Wed May 2 14:59:57 UTC 2007


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: Review Request: avr-gcc - Cross Compiling GNU GCC targeted at avr


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=238705





------- Additional Comments From rc040203 at freenet.de  2007-05-02 10:59 EST -------
(In reply to comment #2)
> (In reply to comment #1)

> > * If I am informed correctly (I am only semi-educated on the avr toolchain), the
> > classical avr toolchain is based on avr-libc. This would imply to build GCC
> > against avr libc instead of "no libc".
> 
> AFAIK the 2-stage building of gcc is not necessary for the AVR, none of the docs
> on compiling gcc for the AVR I could find talk about this. See for example:
> http://www.nongnu.org/avr-libc/user-manual/install_tools.html
Well, normally, GCC checks for libc features and configures several of its
internal components accordingly (esp. wrt. target libraries such as libstdc++).

When none of the libc features can be found in libc, features will be disabled
("not found" == "not available") or be substituted ("not found" == "to be
provided"). This issue often is referred to as "bootstrapping GCC".

The standard way to work around this issue normally is to
first build an "initial bootstrap c-only gcc", then use this to build libc and
then to rebuild GCC. 

Another approach is "incrementally building", i.e. initially build a "bare
metal/libc-less GCC" (Which is what you currently build).
Install this, then build libc and then build a fullfledged GCC again.
Afterwards, all subsequent builds of avr-gcc would have to "BuildRequire:
avr-libc" and correctly receive the settings inside of avr-libc.

i.e. I am having strong doubts on the way of building GCC as being described
under the link above.

> Re-reading this page, I do notice that I forgot to add these 2 adviced configure
> flags: "--disable-libssp  --with-dwarf2". Unless someone objects I'll add these,
I don't know off-head (I could check the sources) if these are required by
"plain avr" targets.

Normally, if a target is properly implemented, none of them should be necessary,
but GCC internally should choose the correct option by itself


-- 
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.




More information about the package-review mailing list