Subject: Re: gcc-ada/gnat for Sparc64 ?
To: Mehul Sanghvi <mehul.sanghvi@gmail.com>
From: Seth Kurtzberg <seth@cql.com>
List: port-sparc64
Date: 02/10/2005 20:09:19
Mehul Sanghvi wrote:

>'allo,
>
>     Does anyone know if there is a gcc-ada/gnat package available for
>gcc-3.3.3 (the default
>installed compiler) ? 
>
>     Apparently, without Ada being installed on your system, you can't
>build Ada, so trying
>to build it for gcc-3.4 doesn't work.
>  
>
Mehul,

Hopefully you can find what you are looking for in binary form.  
Certainly, if it weren't for the Ada requirement, you would find them 
easily.  In case you can't find the binaries you need, the following 
information may be helpful.

Recently I had to bootstrap the gcc compiler, including Ada, to a new 
embedded environment.  There were enough differences in the environment 
that I needed to build my own toolchain, and also cross compile the O/S 
itself.  You won't need to worry about most of that, but you may have 
difficulty getting a binary with Ada support.  If you do need to 
bootstrap it, I can provide a reasonably detailed procedure that I wrote 
for cross compiling the gnu compiler, including the assembler, and 
glibc.  I'm not certain whether there are any Ada dependencies in glibc; 
my best recollection is that there are not, but I could be wrong about that.

First, one caution, gcc-3.4 had at that time (which was a few months 
ago) some serious problems.  There was a minor release to gcc-4 that 
fixed a lot, but not all, of the problems.  If you do have to jump 
through these hoops to get a working compiler that includes ada, I would 
work with gcc 3.3.3.  Then, you can always use gcc-3.3.3 with ada 
support to build gcc-3.4.x.

It might work perfectly well using gcc-3.4 from the start, but six 
months ago it did not; that's out of date but still possibly relevant 
information.

Ada support is a PITA (as you've obviously discovered) because you have 
to use the native version of gnat, and the cross compiled version of 
gnat, and to do that requires some monkeying around with the execution 
search path to use the version of gnat that gets you where you need to 
go.  It isn't really difficult, it is just poorly documented.

If you are unable to get there the easy way (by finding some binaries 
that have already been created, including Ada support) I have a 
reasonably detailed procedure that can be used to get where you need to 
go.  Since it is lengthy I won't eat up list bandwidth for it;  should 
you need it, drop me an email and I'll send the procedure to you.  (Or 
to anyone else, of course, burdened with Ada.)  Hopefully the binaries 
you need will be available.

>
>cheers,
>
>      mehul
>
>  
>