Overview of the status on Windows

From PLplotWiki
Revision as of 18:04, 27 April 2010 by Hbabcock (Talk | contribs) (Add note about cairo and Qt status)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page presents an overview of the various Windows platforms and the status of the CBS for them.

The platforms are "canonical": we assume typical or often encountered installations. For "bare Windows" this means Windows XP, Microsoft Visual C/C++ (version 6.0, 2003 or 2005, but currently with an emphasis on version 6.0). For Cygwin and MinGW this is the suite of GCC compilers.

Status per 27 April 2010, Arjen Markus, Werner Smekal and Hazen Babcock

----------------------+----------------+----------------+----------------+----------------+----------------+
Build aspects         |  Bare Windows  |      Cygwin    |      MinGW     |   Borland 5.5  |Open Watcom 1.5 +
----------------------+----------------+----------------+----------------+----------------+----------------+
Library options:      |                |                |                |                |                |
Static libraries      |      Yes       |       Yes      |       Yes      |       Yes      |      Yes       |
Shared libraries (DLL)|      Yes       |       Yes      |       Yes      |       Yes      |      Yes       |
Dynamic drivers       |      Yes       |       Yes      |       Yes      |        .       |       .        |
Freetype support      |      Yes       |       Yes      |       Yes      |        .       |       .        |
QHull support         |      Yes       |        .       |       Yes      |        .       |       .        |
AGG support           |      Yes       |        .       |       Yes      |        .       |       .        |
                      |                |                |                |                |                |
Languages:            |                |                |                |                |                |
C++                   |      Yes       |       Yes(1)   |       Yes      |        No      |       No(9)    |
Fortran77             |      Yes(10)   |       Yes(3)   |       Yes      |        -       |                |
Fortran95             |      Yes(10)   |       Yes      |       Yes(3)   |        .       |       .        |
Java                  |      Yes       |        .       |        No      |        -       |       -        |
Perl                  |       .        |        .       |        .       |        -       |       -        |
Python                |      Yes       |        .       |       Yes      |        -       |       -        |
Ada                   |       -        |        .       |       Yes      |        -       |       -        |
Tcl                   |      Yes(4)    |       Yes      |       Yes      |        -       |       -        |
Tk                    |       .        |       (5)      |        .       |        -       |       -        |
                      |                |                |                |                |                |
Drivers:              |                |                |                |                |                |
PostScript (psc)      |      Yes       |       Yes      |       Yes      |       Yes      |      Yes       |
PostScript (psttf)    |       .        |        .       |       Yes      |        .       |       .        |
Wingcc (7)            |      Yes       |       Yes      |       Yes      |        .       |      Yes       |
gd (png, jpeg, gif)   |      Yes       |       Yes      |       Yes      |       Yes      |      No        |
wxWidgets             |      Yes       |        .       |       Yes      |        .       |       .        |
cgm                   |      Yes       |       Yes      |       Yes      |       Yes      |      Yes       |
svg                   |      Yes       |        .       |       Yes      |        .       |       .        |
pdf                   |      Yes       |        .       |       Yes      |        .       |       .        |
cairo (11)            |       .        |        .       |       Yes      |        .       |       .        |
Qt                    |       .        |        .       |       Yes      |        .       |       .        |
----------------------+----------------+----------------+----------------+----------------+----------------+

Notes:

  • A dot (.) simply means this aspect has not yet been tested.
  • A dash (-) means that this option will not be supported for this compiler, as others covers this field.
  • (1) GNU C++ caused a problem on one machine, but others were successful. Something wrong with the toolchain?
  • (2) Obsolete
  • (3) The Fortran compilers used are g77 and gfortran. For MingW it was tested with g95.
  • (4) The build succeeds currently, but pltcl.exe, the shell that is built, is missing DLLs. You need to copy these into the proper directory manually. (And you need to tell it where to find the Tcl initialisation files).
  • (5) The Tk bindings may use more of the X Window library than has been ported to the Cygwin/MinGW platform. There is also the issue of several UNIX specific Tcl routines that have no equivalent on Windows.
  • (7) The fact that the wingcc driver works under bare Windows, means that the win3 driver is redundant. We could phase it out in due time.
  • (8) (Regarding extra CMake module) Obsolete
  • (9) C++ Bindings are in the moment not available, because of invalid characters in the foldername.
  • (10) Compaq Visual Fortran works now with the extra CMake module, when using shared libraries (DLL). Main issue: the location of all DLLs that are used.
  • (11) Cairo was obtained as part of GTK here: http://www.gtk.org/download-windows.html