comp.lang.ada
 help / color / mirror / Atom feed
* Using Gnat with (or without) VxWorks
@ 1996-06-26  0:00 John Clezy
  0 siblings, 0 replies; 9+ messages in thread
From: John Clezy @ 1996-06-26  0:00 UTC (permalink / raw)


Has anyone tried or know whether it is possible to build a gnat cross compiler that uses VxWorks as the runtime? The reason for asking is that I want to use Ada on a VME single board computer (PowerPC 604) and don't see an easy way of using the features of the board (serial, SCSI, ethernet) without a real time OS such as VxWorks.

Also how do you build a gnat cross compiler?


-- 
John Clezy
Senior Software Engineer
British Aerospace Australia







^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-05  0:00 Using GNAT with (or without) VxWorks John Clezy
@ 1996-07-04  0:00 ` Robert Dewar
  1996-07-05  0:00   ` Richard Kenner
  1996-07-05  0:00 ` Mark Eichin
  1 sibling, 1 reply; 9+ messages in thread
From: Robert Dewar @ 1996-07-04  0:00 UTC (permalink / raw)



John Clezy said

  Since I received no replies to the message below I presume no one
  actually uses gnat for embedded systems. To my mind that seriously
  limits its usefulness as al most all the work I have done has involved
  custom or COTS embedded computers. Ju st in case I'm wrong I have included the message again.

Don't presume that because no one reading CLA responds to you that something
does not exist! In fact there are a number of active projects using GNAT in
a cross-development environment, and it is perfectly possible to build a
gnat cross compiler. However, if you need to ask how it is done, then
probably you do not have the knowledge to do it yourself. This knowledge
can be acquired by study of the gcc and gnat materials, but it is not a
trivial task.

Right now, there are three relevant avenues of approach

  Some knowledgable users are building cross-compilers for themselves. These
  are users with a pretty good knowledge of and familiarity with gcc and the
  gcc environment. Note that we are NOT in a position to provide free help
  for people trying to learn how this is done!

  Second, we are working with the RTEMS folks who have already built some
  GNAT cross systems, and are now working on interfacing tasking to their
  tasking kernel. We antipate supported cross products using RTEMS to
  appear shortly. Look here for announcements in the near future about
  progress in this area.

  Third, TLD Systems has built GNAT cross-compilers, and has announced that
  it will use GNAT technology for its next generation of cross compilers
  implementing Ada 95 technology. Contact TLD systems directly for further
  information.

Finally, as always, if you want to know something about GNAT, it is a good
idea to contact the people who know about GNAT (either at report@gnat.com
for technical questions or at support@gnat.com for questions regarding
support of GNAT).

Regarding the specific question of whether it is possible to build a GNAT
cross-compiler that uses VxWorks as the runtime? Yes it is definitely
possible and at least one user has built such a system (I can't remember
who, it is not one of our supported users).

The important point here is that gcc is very much intended for cross
development work, and a lot of serious embedded work in the C world
uses gcc exclusively. Since GNAT is built on top of gcc, we have an
excellent path to generate cross compilers (note in particular that
all GNAT ports emanate via cross compilers from the original port for
Solaris, which is at least a proof of possibility!)

Robert Dewar
Ada Core Technologies





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Using GNAT with (or without) VxWorks
@ 1996-07-05  0:00 John Clezy
  1996-07-04  0:00 ` Robert Dewar
  1996-07-05  0:00 ` Mark Eichin
  0 siblings, 2 replies; 9+ messages in thread
From: John Clezy @ 1996-07-05  0:00 UTC (permalink / raw)



Since I received no replies to the message below I presume no one actually uses gnat for embedded systems. To my mind that seriously limits its usefulness as almost all the work I have done has involved custom or COTS embedded computers. Just in case I'm wrong I have included the message again.


> Has anyone tried or know whether it is possible to build a gnat cross compiler that uses VxWorks as the runtime? The reason for asking is that I want to use Ada on a VME single board computer (PowerPC 604) and don't see an easy way of using the features of the board (serial, SCSI, ethernet) without a real time OS such as VxWorks.

Also how do you build a gnat cross compiler?


-- 
John Clezy
Senior Software Engineer
British Aerospace Australia





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-05  0:00 Using GNAT with (or without) VxWorks John Clezy
  1996-07-04  0:00 ` Robert Dewar
@ 1996-07-05  0:00 ` Mark Eichin
  1996-07-05  0:00   ` Richard Kenner
  1 sibling, 1 reply; 9+ messages in thread
From: Mark Eichin @ 1996-07-05  0:00 UTC (permalink / raw)



Before assuming that there is no answer, have you considered asking
Wind River Systems (wrs.com, makers of vxworks) directly? 

Gcc is not hard to set up as a cross compiler, there are merely a lot
of details. Gnat is probably likewise -- with the addition that you
need to interface the ada runtime to the target threads package...




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-04  0:00 ` Robert Dewar
@ 1996-07-05  0:00   ` Richard Kenner
  1996-07-06  0:00     ` Robert Dewar
  0 siblings, 1 reply; 9+ messages in thread
From: Richard Kenner @ 1996-07-05  0:00 UTC (permalink / raw)



In article <dewar.836537189@schonberg> dewar@cs.nyu.edu (Robert Dewar) writes:
>(note in particular that all GNAT ports emanate via cross compilers from
>the original port for Solaris, which is at least a proof of possibility!)

Historical correction: the original port was to SunOS and there was
a simultaneous bootstrap done on Alpha, so some of the early ports could
have emanated from either and I don't remember which came from which.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-05  0:00 ` Mark Eichin
@ 1996-07-05  0:00   ` Richard Kenner
  1996-07-06  0:00     ` Robert Dewar
  0 siblings, 1 reply; 9+ messages in thread
From: Richard Kenner @ 1996-07-05  0:00 UTC (permalink / raw)



In article <xe1hgrn5fg7.fsf@maneki-neko.cygnus.com> Mark Eichin <eichin@cygnus.com> writes:
>Before assuming that there is no answer, have you considered asking
>Wind River Systems (wrs.com, makers of vxworks) directly? 
>
>Gcc is not hard to set up as a cross compiler, there are merely a lot
>of details.

Also, gcc already supports VxWorks on most targets.

>Gnat is probably likewise -- with the addition that you
>need to interface the ada runtime to the target threads package...

Correct.  Once you have a gcc cross-system built, making a GNAT
cross-compiler is trivial (you add "Ada" to the LANGUAGES parameter),
but you do have to deal with runtime issues.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-06  0:00     ` Robert Dewar
@ 1996-07-06  0:00       ` Richard Kenner
  0 siblings, 0 replies; 9+ messages in thread
From: Richard Kenner @ 1996-07-06  0:00 UTC (permalink / raw)



In article <dewar.836627979@schonberg> dewar@cs.nyu.edu (Robert Dewar) writes:
>But the original Alpha port came from the SunOS port (Richard, that has
>to be true, we did not have an Ada compiler on the Alpha at the time
>that could compile GNAT -- we bootstrapped using the Alsys compiler
>under SunOS).

That's true, but it didn't involve a cross-compiler in the current sense
since we viewed the trees as machine-independent that early on and
were reading and writing trees.

(Specifically, I don't believe we had a compiler on a Sparc that
generated Alpha code.)




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-05  0:00   ` Richard Kenner
@ 1996-07-06  0:00     ` Robert Dewar
  1996-07-06  0:00       ` Richard Kenner
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Dewar @ 1996-07-06  0:00 UTC (permalink / raw)



Richard Kenner said

"Historical correction: the original port was to SunOS and there was
a simultaneous bootstrap done on Alpha, so some of the early ports could
have emanated from either and I don't remember which came from which."

Well I agree that the original port was to SunOS and not Solaris!

But the original Alpha port came from the SunOS port (Richard, that has
to be true, we did not have an Ada compiler on the Alpha at the time
that could compile GNAT -- we bootstrapped using the Alsys compiler
under SunOS).





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Using GNAT with (or without) VxWorks
  1996-07-05  0:00   ` Richard Kenner
@ 1996-07-06  0:00     ` Robert Dewar
  0 siblings, 0 replies; 9+ messages in thread
From: Robert Dewar @ 1996-07-06  0:00 UTC (permalink / raw)



Richard said

"Correct.  Once you have a gcc cross-system built, making a GNAT
cross-compiler is trivial (you add "Ada" to the LANGUAGES parameter),
but you do have to deal with runtime issues."

Well running the compilation may be trivial, but testing to see if
the resulting cross GNAT compiler works, and fixing any bugs that
this testing may reveal may be a little less trivial!





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~1996-07-06  0:00 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-07-05  0:00 Using GNAT with (or without) VxWorks John Clezy
1996-07-04  0:00 ` Robert Dewar
1996-07-05  0:00   ` Richard Kenner
1996-07-06  0:00     ` Robert Dewar
1996-07-06  0:00       ` Richard Kenner
1996-07-05  0:00 ` Mark Eichin
1996-07-05  0:00   ` Richard Kenner
1996-07-06  0:00     ` Robert Dewar
  -- strict thread matches above, loose matches on Subject: below --
1996-06-26  0:00 Using Gnat " John Clezy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox