gnat/rtems?
Joel Sherrill
joel.sherrill at OARcorp.com
Mon Jul 31 01:31:04 UTC 2000
Daniel Lange wrote:
>
> Has anyone ever gotten gnat/rtems to compile? I followed the instructions
> on www.oarcorp.com to the letter, downloading all the files (finding
> gcc-2.81 was next to impossible) and decompressing all the files and
> applying patches, etc. However, it looks like the page I was following was
> written for setting up the C version of rtems, because it has certain
> obvious errors...
>
> http://www.oarcorp.com/rtems/betas/rtems-4.5.0-beta/online-docs/rtemsdoc-4.5-beta3/share/rtemsdoc/html/started_ada/started_ada00015.html
> has no download site for gnat... I ended up searching for it with google.
OK. Isn't it cs.nyu.edu?
> And the files on OARcorp's site aren't where they are supposed to be, I
> had to poke around in their ftp server to find the right files...
That I can understand. The main thing being fixed in the documentation
between the beta and release is file location on the net.
> and the only place I could find gcc-2.8.1 (it's old now, 2.9.5 is out) was
> on metalab.unc.edu.
gcc 2.8.1 is old and that is just an unfortunate fact of life when using
gnat. gnat depends on an old (ancient in open source terms) version of
gcc.
> I could be mistaken on this one, but I run a Debian linux system, and gcc
> won't compile ada files, and doesn't recognize the -gnata and -gnatpg
> options. I copied the ada directory and did the patch to gcc, and that
> kept failing with an "Warning: Ada compiler not installed on this system."
> so I hacked the Makefile and set CC= gnatmake, that generated the proper
> .o files, but bombed out with a constraint error on types.adb.
You are absolutely right. Ada is not supported by "normal" installs
of gcc.
> I was attempting to use rtems-4.5.0-beta3a.tgz to build, but really I
> don't think the compile ever got that far...
>
> can anyone tell me what I did wrong?
You need to find a native gnat for your machine. I typically use the
precompiled binary to build something that installs into a non-standard
location (say /usrX/gnat-VERSION) and put that at the head of my PATH
ONLY when compiling Ada code. Otherwise, you are dealing with an old
gcc that is broken for C++. Normally you will want to use a more recent
gcc for at least C/C++.
I am sorry this is confusing and difficult but gnat's dependency on
gcc 2.8.1 is hard to deal with on a number of levels. It even
creates maintenance problems on our side because gcc 2.8.1 does
not support elf well for embedded targets. Recent RTEMS versions
use ELF for most targets.
> Daniel Lange
--
Joel Sherrill, Ph.D. Director of Research & Development
joel at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the users
mailing list