Cheapest hardware for Ada development (ARM7TDMI)?

Joel Sherrill joel.sherrill at oarcorp.com
Wed Jul 5 18:37:36 UTC 2006


Chris Sparks wrote:

> Ralf Corsepius wrote:
>
>> On Wed, 2006-07-05 at 08:11 -0500, Joel Sherrill wrote:
>>  
>>
>>> Ralf Corsepius wrote:
>>>
>>>   
>>>
>>>> On Wed, 2006-07-05 at 00:30 +0200, Andreas Schwarz wrote:
>>>>
>>>>
>>>>     
>>>>
>>>>> Hi,
>>>>>
>>>>> I would like to do embedded Ada development, nothing specific, 
>>>>> just for
>>>>> fun and to get some experience. What is the cheapest hardware I 
>>>>> can use
>>>>> with RTEMS and GNAT? I have experience with the ARM7TDMI-based
>>>>> controller families by Atmel and Philips. Is there any chance I 
>>>>> can port
>>>>> RTEMS to such a target (e.g. 256K ROM, 64K RAM) and make it work 
>>>>> with GNAT?
>>>>>  
>>>>>       
>>>>
>>>> There is almost no chance to get this working, for 2 reasons:
>>>> 1. Getting gnat functional is very hard in general.
>>>>
>>>>
>>>>     
>>>
>>> Granted but Laurent Guerby's instructions are on the RTEMS Wiki.
>>>   
>>
>> Well, they only work if you are willing to abandon multilibs and to
>> replace your system's compiler. To me, this is beyond reason.
>>
>> And .. if you're on a multilib'ed host, life will be even one magnitude
>> more unpleasant.
>>
>>>> 2. Arm support in GNAT is not implemented in GCC.
>>>>
>>>>
>>>>     
>>>
>>> I haven't tried it in a while so I will have to trust you on this one.
>>>   
>>
>> What I said applies to gcc < 4.1.x.
>>
>> Also remember: Once we should start shipping multilib'ed RTEMS binary
>> libraries, we will have to drop GNAT/RTEMS unless GNAT finally starts
>> supporting multilibs.
>>
>> Ralf
>>  
>>
> I was trying to read up on what "multilib" was all about and I still 
> don't understand what GNAT has
> to do with "multilib".  Wouldn't all the architecture variations 
> within a family of processors be handled
> by the GCC back end?
>
Multilib is the GNU term for building a library multiple times -- one 
for each architectural variant
that is different enough.  Different enough means either:

+ incomptable (e.g. 68000 vs 68020 vs coldfire)
+ performance/tuning difference (e.g. i386 vs Pentium)
+ missing capabilities (e.g. hardware FPU presence)

Do a find for libc.a in an RTEMS tool installation and you will see the 
variants in the RPMs.

GNAT's run-time library does not currently have the build infrastructure 
setup in gcc to
product multilibs so is not really ready to be packaged as a language 
with the other RTEMS
RPMs.  This should be fairly straightforward to fix once given someone 
knows about the
multilib infrastructure works on it but no one has done so.

--joel

> Chris Sparks
>




More information about the users mailing list