===============================================================================
 Area: OS/2 programming               (English) (OS2PROG)
 Date: Tue 14 Feb 95 04:54  In: Wed 15 Feb 95 18:36
 From: Jonathan de Boyne Pollard (2:440/4)
 To  : All
 Subj: What C++ Compiler ?
 Attr: Scanned
-------------------------------------------------------------------------------
   The (highly unofficial) FIDONET OS2PROG C++ compiler pros and cons list
   -----------------------------------------------------------------------


   EMX 0.9a  --  Contact : mattes@azu.informatik.uni-stuttgart.de

       [ ] OS/2 Developer's Toolkit (*NOTE*) [ ]  IDE         (*NOTE*)
       [ ] PM Class libraries                [ ]  Guidelines
       [ ] Ships on CD-ROM   (*NOTE*)        [ ]  Workframe   (*NOTE*)
       [ ] SOM support                       [ ]  DirectToSOM C++
       [ ] Intel 586 FDIV workaround

   NOTES : You have to hunt for EMX.  Most sites are not always up to
   date, or carry the complete distribution.  One of the CD-ROMs of the
   Hobbes OS/2 FTP site comes with EMX pre-installed (the other does not).
   Unfortunately, there is no author-supported site from which EMX can be
   File Requested or downloaded.  The author only distributes via FTP from
   ftp.uni-stuttgart.de.  Buying the OS/2 Developers' Toolkit is highly
   recommended for PM work, since it includes PM documentation.  The
   author has stated that he has no intention of adding Workframe support,
   and that his "IDE" is the emacs text editor.

   PRO : Free (it's essentially the GNU compiler "rebadged").  Exceptional
   support for porting UNIX applications to OS/2.  Will develop OS/2 and
   extended DOS applications.  Lots of UNIX libraries, such as curses,
   available.  Exceptional support for POSIX.1.  Good optimiser.  Full
   source to all libraries is available.  Full source for the compiler
   itself is available.

   CON : Free (you get what you pay for, including the support).  No 586
   support.  Development tools are as horrible as the UNIX originals, and
   are strictly command-line based.  Tools frequently default to UNIX, not
   PC, standards, especially filename conventions (working from OS/2
   programming reference books with EMX C++ is a challenge not recommended
   to the novice).  No PM support tools (help compiler, dialogue editor,
   et al.).  The DOS extender supplied doesn't work under OS/2 because it
   uses VCPI.  No printed manuals.  No OS/2 API documentation.  Excessive
   reliance on extra tools (such as TeX and Emacs) that you have to go
   hunting for.


   Borland C++ 2.0  --  Contact : sales@borland.com (?)
   (I still don't have a copy of BC++OS2 2.0 yet.  An authoritative update
   to this entry is thus still pending.)

       [-] OS/2 Developer's Toolkit (*NOTE*) [*]  IDE
       [*] PM Class libraries                [*]  Guidelines (*NOTE*)
       [*] Ships on CD-ROM   (*NOTE*)        [ ]  Workframe
       [ ] SOM support                       [ ]  DirectToSOM C++
       [ ] Intel 586 FDIV workaround

   NOTES : Guidelines currently officially supports 1.01, but for 2.0
   support all that you need to do is ask and it may well happen.  Contact
   Guidelines Tech Support on CompuServe for details.  Borland has
   integrated the OS/2 Developer's Toolkit into its own toolset.  However,
   it is a mishmash of the 2.0 version of the Toolkit (with some glaring
   errors in the documentation) and the 2.1 version.  The Borland Help
   folder installed to the desktop contains the older buggy version.

   PRO : Quick development and fast compilation.  Very cheap.  Neat and
   easy to use IDE, that integrates editor, compiler, linker, debugger,
   and API reference, and that allows you to compile and edit at the same
   time.  Good standalone PM debugger (Turbo Debugger GX), and standalone
   text-mode debugger.  Comes with Borland's own very good PM Resource
   Workshop, including tools to migrate Windows resources to PM.  Upward
   compatibile with Borland C++ for DOS source (apart from recent changes
   to C++).  Will run on an 8Mb machine.  Full source to all libraries
   available.  32-bit in-line assembler (BASM) and standalone assembler
   (TASM).  Full run-time library source available (included in CD
   version).  Supports 586.

   CON : IDE uses MDI paradigm, eating screen space.  No support for
   16-bit development (which rules out device drivers).  Support for
   calling 16-bit code (thunking) has serious bugs in.  A lot of
   non-standard items in the libraries and headers.  Mediocre optimiser.
   Resource workshop isn't as good as Borland *could* do.  No support for
   POSIX.1.  Tools are counterintuitive for those coming from other
   compilers/platforms (e.g.  they don't use environment variables).  Poor
   technical support (bugs are rarely acknowledged).  OWL for PM does not
   support standard CUA91 controls.


   Watcom C++ 10.0b  --  Contact : sales@watcom.on.ca  (FIDONET 1:221/186)

       [*] OS/2 Developer's Toolkit          [*]  IDE  (*NOTE*)
       [ ] PM Class libraries                [*]  Guidelines (*NOTE*)
       [*] Ships on CD-ROM (*ONLY*)          [*]  Workframe
       [*] SOM support (*ONLY v1*)           [ ]  DirectToSOM C++
       [*] Intel 586 FDIV workaround

   NOTES : Guidelines currently officially supports 9.5, but 10.0 support
   is in the pipeline.  Contact Guidelines Tech Support on CompuServe for
   details.  Some parts of the IDE are Windows programs (although the
   resource tools supplied in the OS/2 Developers' Toolkit may be
   substituted for them).

   PRO : Highly portable (Windows, extended DOS, OS/2, Netware, QNX).
   Industrial strength optimiser.  Has its own IDE similar to Workframe.
   Develops for both 16 and 32 bit platforms.  Supports 586.  Able to
   generate applications for multiple platforms from OS/2 with little or
   no source changes.  Able to debug DOS and Windows applications running
   in separate sessions within OS/2.  32-bit assembler (WASM).  Excellent
   technical support (Watcom will ship patches to major bugs).  All Watcom
   patches are available from their FIDONET site.  File Request FILES from
   them for details.  Comes with example demo programs for all standard
   library functions.

   CON : Non-standard linker.  Printed manuals are extra and will almost
   double the price of the product.  You pay Bill Gates for at least three
   of the bundled toolkits.  Although there are fixes available, the
   SOMObjects Developers' Toolkit supplied is only for version 1 of SOM,
   whereas OS/2 WARP requires version 2 (installing version 1 SOM.DLL will
   disable Workplace Shell -- be warned!).  The documentation is badly
   edited, repetitive, and in cases misleading.  The technical support has
   just been outsourced, and anything more than help for installing the
   program and compiling the sample code (which is free) now costs a
   significant amount.


   Metaware High C++ 3.31a  --  Contact : techsales@metaware.com

       [*] OS/2 Developer's Toolkit          [ ]  IDE
       [ ] PM Class libraries                [ ]  Guidelines
       [ ] Ships on CD-ROM                   [*]  Workframe
       [*] SOM support (*NOTE*)              [*]  DirectToSOM C++
       [*] Intel 586 FDIV workaround

   NOTES : The OS/2 Developers' Toolkit 2.1 supplied supports SOM 1.
   DirectToSOM C++, however, supports SOM 2. The SOM.DLL supplied with
   High C++ is a later release than the one supplied with WARP, but the
   WARP version may be used with no ill effect.

   PRO : Highly portable (Windows, extended DOS, OS/2, UNIX).  Supports
   586.  Industrial strength optimiser.  Ships with the excellent Rogue
   Wave Tools.h++ class libraries (with everything from strings to
   databases).  Excellent and detailed manuals.  Proposed ISO C++ features
   not in any other current compiler on any platform (namespaces,
   iterators, case ranges, nested functions, pass-by-name, exception aware
   classes).  Supports customisable function calling conventions.
   Supports per-thread variabl declarations.  Excellent POSIX.1 support.
   Excellent technical support (Metaware will ship patches to major bugs).
   Supports developing Workplace Shell objects with DTS C++ (all DTS C++
   headers for WPS are provided).  Comes with example demo programs for
   all standard library functions.

   CON : Terrible text-mode debugger.  No 16-bit support at all
   (Pre-thunked versions of VIO16/MOU16/KBD16 are supplied, though).  No
   emitter to translate IDL to DTS C++.


   IBM CSet++ 2.1  --  Contact : cset2@vnet.ibm.com
   (Version 3.0 is currently in its second closed beta test.)

       [*] OS/2 Developer's Toolkit          [ ]  IDE
       [*] PM Class libraries (ICLUI)        [*]  Guidelines
       [*] Ships on CD-ROM                   [*]  Workframe
       [*] SOM support (*ONLY v1*)           [ ]  DirectToSOM C++
       [ ] Intel 586 FDIV workaround

   PRO : *The* standard for OS/2 development.  An industrial strength
   optimiser.  586 support.  Good thunking support.  Excellent PM debugger
   (IPMD).  Toolset is easy to learn for those upgrading from Microsoft
   compilers.  Good technical support (the usual IBM CSD system).

   CON : Demands enormous amounts of memory (16Mb is a working machine!).
   No cross-platform compatibility.  No support for 16-bit development (so
   device drivers are out here too).  No support for POSIX.1.  Requires a
   device driver in CONFIG.SYS for the execution profiler.  The SOM
   support supplied is only for version 1 of SOM, whereas OS/2 WARP
   requires version 2.

   > JdeBP <          > (c) Copyright 1993-1995 All Rights Reserved. <
   > JdeBP@donor2.demon.co.uk                      FIDONET 2:440/4.0 <
___
 X MegaMail 2.10 #0:
--- Maximus/2 2.02
 * Origin: DoNoR/2,Woking UK (44-1483-722344) (2:440/4)



===============================================================================
 Area: OS/2 programming               (English) (OS2PROG)
 Date: Tue 14 Feb 95 04:54  In: Wed 15 Feb 95 18:36
 From: Jonathan de Boyne Pollard (2:440/4)
 To  : All
 Subj: What C++ Compiler ?
 Attr: Scanned
-------------------------------------------------------------------------------
   The (highly unofficial) FIDONET OS2PROG C++ compiler pros and cons list
   -----------------------------------------------------------------------

                                GLOSSARY
                                --------

   What is ...

    ...  the OS/2 Developers' Toolkit ?

      Available separately, this comprises the header files, link
      libraries, sample source, API reference, and PM utilities for OS/2
      development.  IBM part number 61G1416.


    ...  the SOMObjects Developers' Toolkit ?

      The OS/2 Developers' Toolkit 2.1 only supports SOM version 1.x.  SOM
      2.x requires a different toolset, works differently, and uses IDL.
      The SOMObjects Developers' Toolkit 2.0 contains a a SOM 2.0
      compiler, IDL files, and documentation.  It is available separately,
      with IBM part number 59G5667 (check the version number when
      ordering).  Version 2.1 is due for release during December 1994, and
      plans are in the works to integrate the SOMObjects toolkit with the
      main developers' toolkit.


    ...  the OS/2 Developers' Assistance Programme ?

      The DAP is a subscription service from IBM that provides BBS
      technical support, marketing and product information, and discounted
      prices on OS/2 development tools to developers of OS/2 products.


    ...  the OS/2 Developers' Connection CD-ROM ?

      A common fallacy is that this is part of the DAP.  Although DAP
      membership gives cheaper subscription rates to DevCon, the DevCon
      CD-ROMs are available on their own as single issues or as a yearly
      subscription.

      The DevCon CD-ROMs contain a wealth of source code, tools,
      development utilities, and documentation for OS/2 programmers.


    ...  Workframe ?

      Again available separately, this is a compiler independent
      development environment.  Workframe is a means of managing projects,
      and uses compiler-supplied DLLs to handle things like generating
      makefiles, and displaying options settings notebooks for the
      compiler, linker, and resource tools.  It integrates with EPM (or
      other editors) to allow you to edit source files at the point of
      error.  I've had two projects, one CSet++ and one High C++, both
      being built *simultaneously* in Workframe.


    ...  SOM ?

      System Object Model.  It's what drives Workplace Shell.  It's a
      language-independent run-time environment for class and object
      support.  See the DirectToSOM document and the SOMObjects Travel
      Guide for more details.


    ...  DSOM ?

      Distributed SOM.  This allows programs to share classes and objects
      among themselves.  See the DirectToSOM document and the SOMObjects
      Travel Guide for more details.


    ...  DirectToSOM C++ ?

      DirectToSOM C++ compilers allow SOM classes to be defined and used
      using standard C++ class syntax.  See the DirectToSOM document and
      the SOMObjects Travel Guide for more details.


    ...  Guidelines ?

       Like Visual BASIC ?  You'll love this ...

       You can obtain GUIDOC.ZIP, the introductory documentation for
       Guidelines via FIDONET File Request from most Fernwood
       Filebone sites, or via FTP from Hobbes.

   > JdeBP <             > (c) Copyright 1994-1995 All Rights Reserved. <
   > JdeBP@donor2.demon.co.uk                         FIDONET 2:440/4.0 <
___
 X MegaMail 2.10 #0:
--- Maximus/2 2.02
 * Origin: DoNoR/2,Woking UK (44-1483-722344) (2:440/4)



