files into a suitable directory such as c:\wx. Alter your
WXWIN environment variable to point to this directory.
+Other add-on packages are available from the wxWindows Web site, such as:
+
+- glcanvas.zip. Use OpenGL in a wxWindows window.
+- ogl3.zip. Object Graphics Library: build network diagrams, CASE tools etc.
+- tex2rtf3.zip. Tex2RTF: create Windows Help, HTML, and Word RTF files from
+ the same document source.
+
Compilation
-----------
At present, wxWindows compiles with VC++ 4.0/5.0/6.0,
-BC++ 4.5/5.0, Gnu-Win32 b19/b20, and Mingw32. It may compile
+BC++ 4.5/5.0, Cygwin b19/b20, and Mingw32. It may compile
with 16-bit compilers (BC++ and VC++ 1.5) but this hasn't
been tested lately.
at 40MB :-) However, wxWindows at least makes a good test suite for
improving the compiler.
-Gnu-Win32 b19/b20/Mingw32 compilation
--------------------------------------
+Cygwin b19/b20/Mingw32 compilation
+----------------------------------
-wxWindows 2.0 supports Gnu-Win32/Cygwin b19, b20, Mingw32, and Mingw32/EGCS.
+wxWindows 2.0 supports Cygwin (formerly GnuWin32) b19, b20, Mingw32, and Mingw32/EGCS.
Thanks are due to Keith Garry Boyce (garp@opustel.com) and Cygnus for making
it all possible.
-From wxWindows 2.0 beta 9, both Gnu-Win32 and Mingw32 (the minimal
-distribution of Gnu-Win32) can be used with the same makefiles.
+From wxWindows 2.0 beta 9, both Cygwin and Mingw32 (the minimal
+distribution of Cygwin) can be used with the same makefiles.
Here are the steps required:
-- Retrieve and install the latest beta of Gnu-Win32, or Mingw32, as per the
+- Retrieve and install the latest beta of Cygwin, or Mingw32, as per the
instructions with either of these packages.
- If using Mingw32 (including the EGCS variant), you need some
extra files to use the wxWindows makefiles. You can find these
files in ports/mingw32 on the ftp site or CD-ROM, as extra.zip.
These should be extracted to the Mingw32 directory.
+ If you have already have downloaded bison, flex, make, rm, mv
+ from elsewhere, you won't need this.
+
IMPORTANT: also see mingw32.txt in this directory (docs/msw)
about a fix that has to be applied to a Mingw32 header file.
to set up appropriate variables, if necessary mounting drives.
Run it before compiling.
-- For Gnu-Win32, make sure there's a \tmp directory on your
+- For Cygwin, make sure there's a \tmp directory on your
Windows drive or bison will crash.
- Edit wx/src/makeg95.env and search for MINGW32. Take note of
- the comments for adjusting settings to suit Gnu-Win32 or
+ the comments for adjusting settings to suit Cygwin or
Mingw32. Basically, this is just a case of adding the __MINGW32__ symbol
- to OPTIONS for Mingw32, or removing it for Cygnus Gnu-Win32.
+ to OPTIONS for Mingw32, or removing it for Cygnus Cygwin.
For Mingw32/EGCS, add both __MINGW32__ and __EGCS__.
+ You may need to remove -loldnames from WINLIBS for Mingw32, or add it for
+ Cygwin.
- Mingw32 may not support winsock.h, so comment out
socket-related files in src/msw/makefile.g95.
- Use the 'strip' command to reduce executable size.
-- With Cygnus Gnu-Win32, you can invoke gdb --nw myfile.exe to
+- With Cygnus Cygwin, you can invoke gdb --nw myfile.exe to
debug an executable. If there are memory leaks, they will be
flagged when the program quits.
- libwx.a is 48 MB or more - but much less if compiled with no
debug info (-g0) and level 4 optimization (-O4).
- install.exe doesn't have built-in decompression because lzexpand.lib
- isn't available with Gnu-Win32. However, you can use it with external
+ isn't available with Cygwin. However, you can use it with external
decompression utilities.
- Doesn't compile src/msw/ole files, so no drag and drop.
Use makefile.twn in much the same way as makefile.g95, as
described above. Not all sample makefiles are supplied yet.
-Notes
------
+For some reason, I found I had to copy TWIN32's Windows resource
+compiler (rc) to the current working directory for it to be found.
+
+General Notes
+-------------
- Debugging: under Windows 95, debugging output isn't output in
the same way that it is under NT or Windows 3.1. Set