Path: news.funet.fi!fuug!mcsun!sun4nl!hgatenl!tedux!wiesje!baron From: baron@wiesje.hobby.nl (Wim `Blue Baron' van Dorst) Newsgroups: comp.os.minix Distribution: world Subject: Compiler Comparison: summary Keywords: cc Message-ID: <9206081689@wiesje.hobby.nl> Organization: Minix Hobbynet Host Date: Mon, 8 Jun 1992 20:12:51 MDT Lines: 69 Hello * Some time ago I asked about the various compilers available for Minix. I hereby summarize the result of my research. Thanks to whom replied to my requests, such as Alan Black, Bruce Evans, Olaf Flebbe, Philip Homburg, Martin Huber, Ceriel Jacobs, Phil Kemp, Dan McCabe, Frans Meulenbroek, Warren Toomey, Nate Williams (very informative), and Christoph van Wuellen. I present the information in the following table: ACK ACK/Ansi bcc GCC/386 gcc/ST c68/c386 Price (1) $200 free free free free Processor all all intel i386 m68k m68k/i386 Compiler source no no no yes yes yes Library source yes yes yes yes yes yes Resulting code good large fair good(2) good(2) good ANSI no yes no yes yes no Floating point (3) no yes no yes(3) yes(3) yes no. of bits on PC(4) 16 16 16/32 32 -/no 64k+64k limit(4) yes yes yes/no no -/no Documentation(5) :-) :-) :-) :-) :-) :-) Known Limitations(6) yes yes yes yes Notes: 1. The ACK compiler comes with Minix, but is not free in itself. 2. In case of GCC 2.1 with optimizer, _very_ good code is produced. 3. The floating point processor is not supported by Minix itself. Thus mentioned here is emulation in software. The fpp emulation in gcc, both /386 and /ST, are considered good, but open for improvement. 4. Only for the PC the difference 16/32 bits is relevant. The 64k+64k is actually not compiler dependent, but dependent of the no. of bits. 5. Apart from the books of K&R, and ANSI manuals none of these compilers include any serious documentation. Man pages are included, though, and you can read the source if provided :-). 6. The old ACK compiler is known to contain bugs, repaired in the new version. Bcc cannot pass structures to functions. The gcc compilers need a patch to the kernel to get the resulting a.outs running. They also need lots of RAM (4 MB is said to be workable). Conclusion: ACK When one buys Minix 1.5 the ACK compilers gets thrown in. It's not the best there is, but it has served the purpose sofar. ACK/ansi The ACK/ansi compiler probably shall be shipped with the future Minix 2.0, and as such will serve its purpose again. It is considered expensive, but luckily it hardly ever is necessary to buy it now, as good alternatives are available, provided you have the hardware. bcc The bcc compiler has a very definite purpose, that is to bootstrap Minix-386. Besides that, it is rather limited, be it fast. gcc/386 The gcc port of version 1.37 is well recommended. When version 2.1 of the gcc comes available for Minix-386, that is the one you'll really want. gcc/ST Gcc 1.4 was ported, and well recommended. Version 2.1 is in testing phase now, and really well accepted. c68/c386 One compiler with two front end seem to be quite proper compilers. I can't find fault with it, nor can I find use for it. For further information about this summary, or the various compiler feel free to ask. I shan't have all the answers, but I may give you a pointer to persons who may have further information for you. Met vriendelijke groeten, Wim `Blue Baron' van Dorst --------------------------------------------------------------------- Blue Baron = Wim van Dorst, Voice (+31) 074-443937, (+31) 02152-42319 (-: baron@wiesje.hobby.nl tgcpwd@urc.tue.nl :-) ---------------------------------------------------------------------