[comp.sys.ibm.pc.programmer] Help choosing C Compiler for specific use

elvis@hammond.cs.unlv.edu (Frederick Haab) (05/23/91)

In article <1991May22.225803.23546@cbnewsd.att.com> knudsen@cbnewsd.att.com (michael.j.knudsen) writes:
>I'd like some advice on choosing between the many C compilers
>available for MSDOS systems.  Before we get into good old religious
>flame wars, let me say something about what I want it for:
>
>I'm porting a large C program, which I've already written and debugged,
>from a 68000 and a 6809 system (running OS-9).
>There are about two dozen source.c files and a dozen header.h files,
>plus a makefile.  The 68000 executable is over 100K.
>This program is totally graphics oriented, with its own windows,
>and uses both the mouse and the keyboard, plus some extra hardware,
>so I need good libraries for that sort of stuff.

I personally use Turbo C++, and with the included utilities you really
only get the normal C keyboard routines, plus a couple of extra ones,
and NO mouse support, although interupts are supported and you can
write the routines yourself (I did.)

>I can't use any "toy" C systems (Quick C?) or need any tutorials.
>Do I need Microsoft C, or can Borland's Turbo C handle this?
>What other brands should I consider?
>
>I don't expect to write a lot of code from scratch, but will have
>to do some heavy editing in the system-dependent areas.
>
>Also I've learned the hard way that "ports" dont' just come up and run
>the first time, so I don't mind paying for fancy debugging tools
>a la Turbo, *if* they can be run alongside my own grafix.

The built in turbo debugger (if you are using the built in editor)
will switch screens between the editor and a user output window,
this works with graphics as well as text.

>Also I can never remember what .c file some function is in, so good
>browsing tools would be nice.  I have a good Emacs editor so I
>don't care about the built-in editor, tho I hear that Turbo forces
>you to use their Wordstar-like editor (I could live with that).

Turbo does NOT force you to use their editor.  With all the swapping
the compiler does between memory and disk (I only have 640k), I
often use a separate editor and a makefile.  The standard package
does come with a make utility.

>With Turbo C++ under $100 (?), it's tempting, but should I pay
>extra for Microsoft C?  If I go Turbo, should I shell out extra for
>their "Professional" version?

The professional version comes with Turbo assembler (this allows
inline assembly language right inside your C code.) and the
Turbo Profiler, which I believe helps in optimizing your code,
but I don't have it so there may be more to it.

>It must run on a Compaq II '286 with 640K and a 20 Meg HD
>(or should I look for another computer, sheesh!?!)

I run it on an XT with 640k and 20 meg HD, and it's slow
(some of us students can't afford to just up and buy a
new computer), but it works, and if it works on mine it'll
more than likely work on yours.

>All followups or email replies appreciated.  Thanks, mike k
>-- 
>"What America needs is A Thousand Points When Lit..."
>
>	knudsen@iceland.att.com

	--==-- Frederick Haab --==--

P.S. I posted so I can be corrected, but I'm pretty sure all
     information is correct.

elvis@hammond.cs.unlv.edu (Frederick Haab) (05/23/91)

I forgot to mention, the Integrated Developement Environment (IDE
for short) may very well be like wordstar as far as editing is
concerned, but it also has a somewhat sophisticated windowing
environment.  It allows many files loaded at the same time, and
switching between files is pretty easy, but like I said the
whole thing on my XT is pretty damn slow, so I don't use it.

--==-- Frederick Haab --==--

jcburt@ipsun.larc.nasa.gov (John Burton) (05/23/91)

In article <1991May23.064606.24717@unlv.edu> elvis@jimi.cs.unlv.edu (Frederick Haab) writes:
>In article <1991May22.225803.23546@cbnewsd.att.com> knudsen@cbnewsd.att.com (michael.j.knudsen) writes:
>>I'd like some advice on choosing between the many C compilers
>>available for MSDOS systems.  Before we get into good old religious
>>flame wars, let me say something about what I want it for:
>>
>I personally use Turbo C++, and with the included utilities you really
>only get the normal C keyboard routines, plus a couple of extra ones,
>and NO mouse support, although interupts are supported and you can
>write the routines yourself (I did.)
>

Look into the Borland C++ 2.0 package - it can be used for Windows 3.0
compliant programming and supports rodents...Its a nice slick package...
Its both a C++ compiler and an ANSI C compiler...
(Note, Borland sells two packages, Turbo C++ and Borland C++. Borland C++
is their "professional" version which comes with Assembler, Debugger, and
Profiler, plus a bunch of utilities for working with windows and creating
Hypertext help facilities)

>>Also I can never remember what .c file some function is in, so good
>>browsing tools would be nice.  I have a good Emacs editor so I
>>don't care about the built-in editor, tho I hear that Turbo forces
>>you to use their Wordstar-like editor (I could live with that).
>
>Turbo does NOT force you to use their editor.  With all the swapping
>the compiler does between memory and disk (I only have 640k), I
>often use a separate editor and a makefile.  The standard package
>does come with a make utility.
>

With Borland C++ you have many options as far as an editor goes... 
(I use Emacs on all the systems I work with...so why have to
learn a new one...:-). You can tailor the Wordstar Like editor that
they provide to emulate *most* (but not all) of what emacs does. 
Another alternative is that the Borland C++ (BC) Integrated Development
Environment (IDE) has hooks that let you tie in your favorite utility
or editor. I haven't used it so I can't tell you how it works. The
third option is using command line...BC has a Make facility (not strictly
UNIX compatible - but then again, many (most?) MSDOS Makes are not
UNIX compatible. BC comes with 2 seperate compilers: IDE and Command line.
Also included is a linker and library manager...

>>With Turbo C++ under $100 (?), it's tempting, but should I pay
>>extra for Microsoft C?  If I go Turbo, should I shell out extra for
>>their "Professional" version?

Why Pay extra for Microsoft C when it doesn't provide any additional
functionality?

>
>The professional version comes with Turbo assembler (this allows
>inline assembly language right inside your C code.) and the
>Turbo Profiler, which I believe helps in optimizing your code,
>but I don't have it so there may be more to it.
>
>>It must run on a Compaq II '286 with 640K and a 20 Meg HD
>>(or should I look for another computer, sheesh!?!)
>
>I run it on an XT with 640k and 20 meg HD, and it's slow
>(some of us students can't afford to just up and buy a
>new computer), but it works, and if it works on mine it'll
>more than likely work on yours.
>

Yup, Should work just fine on your machine...get BC 2.0
I think you'll be very happy with it...

>>All followups or email replies appreciated.  Thanks, mike k
>>-- 
>>"What America needs is A Thousand Points When Lit..."
>>
>>	knudsen@iceland.att.com
>
>	--==-- Frederick Haab --==--
>
>P.S. I posted so I can be corrected, but I'm pretty sure all
>     information is correct.


John


+--------------------------------------------------------------------+
| John Burton                                                        |
| G & A Technical Software                                           |
| jcburt@gatsibm.larc.nasa.gov                                       |
| jcburt@cs.wm.edu                                                   |
|                                                                    |
| Disclaimer: Hey, what can I say...These are *my* views, not those  |
|             of anyone else, be they employer, school, or government|
+--------------------------------------------------------------------+

jcburt@ipsun.larc.nasa.gov (John Burton) (05/24/91)

In article <1991May23.204633.1711@cbnewsd.att.com> knudsen@cbnewsd.att.com (michael.j.knudsen) writes:
>Thanks for the many replies so far about choosing a C compiler.
>
>Borland seems to off the following:
>
>Turbo C -- outdated, hard to find anymore, command-line only
>Turbo C++ -- C++, window interface, still keyboard only, no mouse routines
>Turbo C++ Professional -- does Windows, mouse support, great debugger
>Borland C++ 2.0 -- even more and better (?) see below.
>
>From the last posting (not quoted), I get the idea that the last
>two items are really the same, ie, "Professional" implies "not Turbo"
>so it's just called "Borland."  Is that right?  Better to look
>stupid here than in the store (?)
>
>Also Professional is going to cost close to $300 (well, that's
>still less than I paid for the used Compaq 286 :-)
>Wonder if I can even find it at Babbage or Egghead -- they seem to
>have lots of Turbo C++ around.
>
>Is there an upgrade option from Turbo C++ to Professional?
>-- 
>"What America needs is A Thousand Points When Lit..."
>
>	knudsen@iceland.att.com

In a word, yes... Borland is *very* good about offering upgrades 
for all its product lines. once you register your copy of whatever
with them, you will regularly recieve upgrade notices and special
offers on the other product lines...

I started with Turbo C 1.0 (way back in the dark ages! :-) and through
several steps, upgraded to Borland C++ 2.0, never paying more than $100
for the upgrade (I think I've spent about $250 over a several year period).
The only problem now is I have extra copies of the older software that I'm not
using...hmmm perhaps I should try reselling them...does anybody know what
Borland's policy is on end users reselling a product (selling used software,
NOT copies, but the originals)


John

+--------------------------------------------------------------------+
| John Burton                                                        |
| G & A Technical Software                                           |
| jcburt@gatsibm.larc.nasa.gov                                       |
| jcburt@cs.wm.edu                                                   |
|                                                                    |
| Disclaimer: Hey, what can I say...These are *my* views, not those  |
|             of anyone else, be they employer, school, or government|
+--------------------------------------------------------------------+

jwbirdsa@amc.com (James Birdsall) (05/25/91)

In article <1991May23.204633.1711@cbnewsd.att.com> knudsen@cbnewsd.att.com (michael.j.knudsen) writes:
>Turbo C -- outdated, hard to find anymore, command-line only

   Obsolete, yes. But just for completeness, it wasn't command-line only.
It's had an integrated environment since at least version 1.5; I still use
the integrated environment from 2.0 as my programming editor because the
TC++ integrated environments are 1) slow on my machine and 2) annoying.

>Turbo C++ -- C++, window interface, still keyboard only, no mouse routines

   This is correct. As I recall, the integrated environment does support a
mouse, but there are no library mouse routines.

>Turbo C++ Professional -- does Windows, mouse support, great debugger

   No. Turbo C++ Pro does NOT do Windows. The "Professional" versions were
the same as the plain version, with the following additions: Turbo
Debugger, Turbo Assembler, Turbo Profiler.
   
>Borland C++ 2.0 -- even more and better (?) see below.

   THIS is the version that does Windows. It comes with Turbo Debugger,
Turbo Assembler, and Turbo Profiler; indeed, it is not available without
them.

>From the last posting (not quoted), I get the idea that the last
>two items are really the same, ie, "Professional" implies "not Turbo"
>so it's just called "Borland."  Is that right?  Better to look
>stupid here than in the store (?)

   There is no longer any such thing as a "Professional" package. Borland
has segmented the market into two parts. They are now selling a Turbo C++,
Second Edition, which is supposed to be a somewhat-enhanced TC++ 1.0, and
does not come with debugger, assembler, et al., which are presumably still
available as a separate package. And they are selling Borland C++ 2.0,
which is their high-end compiler, etc., as described above.

   Note that the debugger referenced above is the standalone debugger.
There is a debugger build into the integrated environment, which is pretty
good but not nearly as good as the standalone Turbo Debugger.

-- 
James W. Birdsall   WORK: jwbirdsa@amc.com   {uunet,uw-coco}!amc-gw!jwbirdsa
HOME: {uunet,uw-coco}!amc-gw!picarefy!jwbirdsa OTHER: 71261.1731@compuserve.com
================== Kitten: a small homicidal muffin on legs. ==================
=========== "For it is the doom of men that they forget." -- Merlin ===========