bootstrapping gnat GCC on amd64
Daniel Eischen
deischen at freebsd.org
Mon May 18 22:36:18 UTC 2009
On Mon, 18 May 2009, xorquewasp at googlemail.com wrote:
> Hi.
>
> After a week off, another update:
>
> I've realised, too late, that I'm using a version of binutils
> (2.19) that's incompatible with the system binutils (2.15).
> Specifically, assembler code emitted by the native GNAT contains
> .cfi_personality directives (and no doubt other things too) that
> can't be processed by the system 'as'.
>
> I've got two choices now and would appreciate some advice on
> which to take given that I want to produce a FreeBSD port:
>
> 1. Compile binutils-2.15.
>
> Unfortunately, compiling these as cross-binutils appear to be problematic:
Hmm, if the system binutils is 2.15, then it should build
as a cross. You can do a cross build of all FreeBSD - I
think you just set TARGET="amd64" to build amd64 from
a different arch. Part of this process should be to
create a cross binutils toolset.
> 2. Continue to use binutils-2.19.
>
> This would appear to require me to create a binutils-2.19 port
> just for the GNAT compiler. Seems like it would be preferable
> to use the system binutils rather than to take this route...
Well, I used a newer binutils on sparc when I did the original
port. Once I built the cross compiler and binutils toolset,
I was done with it. After the native compiler is built using
the cross tools, you should be able to rebuild the native
compiler _again_ but this time with the system (amd64)
binutils.
--
DE
More information about the freebsd-hackers
mailing list