From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,489591d353106d0c X-Google-Attributes: gid103376,public From: Bob Crispen Subject: Re: Code compatibility of GNAT on Win/NT with other compilers Date: 1996/05/16 Message-ID: <9605162131.AA14304@eight-ball>#1/1 X-Deja-AN: 155235306 sender: Ada programming language comments: cc: michael@ifr.luftfahrt.uni-stuttgart.de newsgroups: comp.lang.ada Date: 1996-05-16T00:00:00+00:00 List-Id: Jonas Nygren sez: >> we are currently considering to use GNAT on WindowsNT. One question >> that arises in this context is how compatible GNAT is with other >> compilers. I have almost no experience with the Microsoft world because >> I am a Unix guy. On a Unix machine there is normally only one standard >> object format and only one linker and so it has never been a problem >> for me to mix different languages. But in the Microsoft world this >> seems to be different. Could anybody please shed some light on this. [snip] >In brief I would recommend you to run on Unix, e.g. Linux. NT is OK if >you are running, Word, Excel, Netscape, a s o. But if you want a >programming environment similar to Unix - it is not possible with NT. >I have installed GNU Win32 , see , >but it is to little, IMO. If I were to develop Ada code professionally >on NT then I'd go for some completely integrated environment, I have seen >Alsys' Active Ada mentioned on the net but know nothing of the product. I use gnat alongside the gnu tools provided with Cygnus GnuWin32 on my Win95 machine at home. The gnu tools include bash, ls, grep, find, sort, tail, tr, sed, and all your old favorites. The only one that's really broken very badly is less, so I find myself sending stdout to files more than I do at work. As yet another Unix guy, I find the gnu tools very easy to work with and reasonably mature. In fact, I don't even have c:\Windows\Command in my $PATH. My only minor quibble is with gnat's integration with gcc. You have to have two copies of gcc lying around if you want to do C++ (of course, who on this newsgroup would want to do THAT? ;-). I also use Thomson's ActivAda, and its GUI builder alone makes it well worth the money (IMHO, your mileage may vary, void where prohibited by law, etc. etc., etc.). I'm looking forward to their ObjectAda. I believe ActivAda gives you an error message on Win95 something like "Libraries must be the children of Win32s libraries" when you set up a project, but I just click OK on the message box, ignore the message, and it works fine. It may very well be my fault that the message is generated. So far, I haven't noticed any problems with the 3.01a gnat. It is a little behind the versions for other machines, but I expect it will catch up eventually. At any rate, gnat beta 3.01a is *much* more fully-featured than the first (or second, or third) Ada 83 compiler I used. I also use vim (a vi editor) and Intermetrics' AppletMagic. Both work just fine in Windows 95 (and I presume NT). Ditto for JDK. I don't believe I have c:\Windows\Command in the $PATH for any of them; I run them all out of bash. I don't say not to use Linux or FreeBSD or whatever, but I think you need to make that decision based on something other than the maturity of the Ada tools or the Unix-like tools. For me, they're plenty mature enough. As for object formats, which is what you asked about originally, I've never tried to link in C++ objects with Ada objects, but I don't know of a reason why this wouldn't work. I've linked C and Ada objects just fine (both were produced by gnat's gcc). I believe there are fewer object file formats than you fear. Executables, though, have some variations. When I launch a Windows executable that I produced with Cygnus gcc or Gnat gcc by double-clicking, it sometimes spawns a DOS window as well as the regular Windows window. I put this down to my own ignorance of the fine points of Windows, and probably my inability to read a manual. Bob Crispen revbob@eight-ball.hv.boeing.com Speaking for myself, not my company