]> git.saurik.com Git - wxWidgets.git/blame - docs/msw/install.txt
Solved a bug in generic wxTreeCtrl whereby CalculatePositions was not completing
[wxWidgets.git] / docs / msw / install.txt
CommitLineData
2bda0e17
KB
1
2Installing wxWindows 2.0
3------------------------
4
5Unarchiving
6-----------
7
8If there is a setup program, run the setup program that comes with the Windows version.
9Do not install into a path that contains spaces. The installation program should set the
10WXWIN environment variable, which will be activated when your machine is rebooted.
11
12If there is no setup program, it will come as a series of .zip
13files:
14
15wx200gen.zip Generic source code and samples (required)
16wx200msw.zip Windows-specific source code and samples (required)
17wx200doc.zip Documentation source code (not required)
18wx200hlp.zip WinHelp documentation
2bda0e17
KB
19wx200pdf.zip Acrobat PDF documentation
20wx200htm.zip HTML documentation
a367b9b3 21wx200vc.zip MS VC++ 5.0 project files
2bda0e17
KB
22
23Unarchive the required files plus any optional documentation
24files into a suitable directory such as c:\wx. Alter your
25WXWIN environment variable to point to this directory.
26
27Compilation
28-----------
29
4fabb575
JS
30At present, wxWindows compiles with VC++ 4.0/5.0/6.0,
31BC++ 4.5/5.0, Gnu-Win32 b19/b20, and Mingw32. It may compile
32with 16-bit compilers (BC++ and VC++ 1.5) but this hasn't
33been tested lately.
2bda0e17 34
4fabb575
JS
35Visual C++ 4.0/5.0/6.0 compilation
36----------------------------------
2bda0e17 37
a367b9b3
JS
38Using project files:
39
401. Unarchive wx200vc.zip, the VC++ 5 project makefiles.
412. Open src/wxvc.dsp, set Debug or Release configuration, and
42 compile. This will produce lib/wxvc.lib or lib/wxvc_debug.lib.
433. Open a sample project file, choose a configuration, and compile.
16553659
JS
44 The project files don't use precompiled headers, to save
45 space, but you can switch PCH compiling on for greater speed.
a367b9b3
JS
46
47Using makefiles:
48
2bda0e17
KB
491. Change directory to wx\src\msw. Type 'nmake -f makefile.nt' to
50 make the wxWindows core library.
512. Change directory to wx\samples and type 'nmake -f makefile.nt'
52 to make all the samples. You can also make them individually.
53
54Visual C++ 1.5 compilation
55--------------------------
56
571. Change directory to wx\src\msw. Type 'nmake -f makefile.dos' to
58 make the wxWindows core library.
e1d1da03 592. Change directory to wx\samples and type 'nmake -f makefile.dos'
2bda0e17
KB
60 to make all the samples. You can also make them individually.
61 NOTE: only a few samples have up-to-date makefiles, e.g.
62 minimal, docview, mdi. The utils makefile does not yet work.
63
64Borland C++ 4.5/5.0 compilation
65-------------------------------
66
671. Change directory to wx\src\msw. Type 'make -f makefile.b32' to
68 make the wxWindows core library.
692. Change directory to wx\samples and type 'make -f makefile.b32'
70 to make all the samples. You can also make them individually.
71 NOTE: only a few samples have up-to-date makefiles, e.g.
72 minimal, docview, mdi. The utils makefile does not yet work.
73
7fe7d506 74Gnu-Win32 b19/b20/Mingw32 compilation
4fabb575 75-------------------------------------
2bda0e17 76
7fe7d506 77wxWindows 2.0 supports Gnu-Win32/Cygwin b19, b20, Mingw32, and Mingw32/EGCS.
2bda0e17
KB
78
79Thanks are due to Keith Garry Boyce (garp@opustel.com) and Cygnus for making
80it all possible.
81
7fe7d506 82From wxWindows 2.0 beta 9, both Gnu-Win32 and Mingw32 (the minimal
2bda0e17
KB
83distribution of Gnu-Win32) can be used with the same makefiles.
84
85Here are the steps required:
86
87- Retrieve and install the latest beta of Gnu-Win32, or Mingw32, as per the
88 instructions with either of these packages.
89
90- If using Mingw32 (including the EGCS variant), you need some
91 extra files to use the wxWindows makefiles. You can find these
92 files in ports/mingw32 on the ftp site or CD-ROM, as extra.zip.
93 These should be extracted to the Mingw32 directory.
a724d789
JS
94 IMPORTANT: also see mingw32.txt in this directory (docs/msw)
95 about a fix that has to be applied to a Mingw32 header file.
2bda0e17
KB
96
97- Modify the file wx/src/cygnus.bat (or mingw32.bat or mingegcs.bat)
98 to set up appropriate variables, if necessary mounting drives.
99 Run it before compiling.
100
101- For Gnu-Win32, make sure there's a \tmp directory on your
102 Windows drive or bison will crash.
103
104- Edit wx/src/makeg95.env and search for MINGW32. Take note of
105 the comments for adjusting settings to suit Gnu-Win32 or
106 Mingw32. Basically, this is just a case of adding the __MINGW32__ symbol
107 to OPTIONS for Mingw32, or removing it for Cygnus Gnu-Win32.
108 For Mingw32/EGCS, add both __MINGW32__ and __EGCS__.
109
4fabb575
JS
110- Mingw32 may not support winsock.h, so comment out
111 socket-related files in src/msw/makefile.g95.
112
2bda0e17
KB
113- Use the makefile.g95 files for compiling wxWindows and samples,
114 e.g.:
115 > cd c:\wx\src\msw
116 > make -f makefile.g95
117 > cd c:\wx\samples\minimal
118 > make -f makefile.g95
119
120- Use the 'strip' command to reduce executable size.
121
122- With Cygnus Gnu-Win32, you can invoke gdb --nw myfile.exe to
4fabb575
JS
123 debug an executable. If there are memory leaks, they will be
124 flagged when the program quits.
2bda0e17
KB
125
126- If using GnuWin32 b18, you will need to copy windres.exe
127 from e.g. the Mingw32 distribution, to a directory in your path.
128
129All targets have 'clean' targets to allow removal of object files
130and other intermediate compiler files.
131
132Gotchas:
133
74e34480 134- libwx.a is 48 MB or more - but much less if compiled with no
bb6290e3 135 debug info (-g0) and level 4 optimization (-O4).
2bda0e17
KB
136- install.exe doesn't have built-in decompression because lzexpand.lib
137 isn't available with Gnu-Win32. However, you can use it with external
138 decompression utilities.
27529614 139- Doesn't compile src/msw/ole files, so no drag and drop.
2bda0e17
KB
140
141References:
142
143 - The GNU-WIN32 site is at
144 http://www.cygnus.com/gnu-win32/
145 - Mingw32 is available at:
146 http://agnes.dida.physik.uni-essen.de/~janjaap/mingw32/index.html
147 - See also http://web.ukonline.co.uk/julian.smart/wxwin/gnuwin32.htm
148
a0a302dc
JS
149Notes
150-----
151
152- Debugging: under Windows 95, debugging output isn't output in
153 the same way that it is under NT or Windows 3.1. Set
154 wxUSE_DBWIN32 to 1 if you wish to enable code to output debugging
155 info to an external debug monitor, such as Andrew Tucker's DBWIN32.
156 You can download DBWIN32 from:
157
158 http://ftp.digital.com/pub/micro/NT/WinSite/programr/dbwin32.zip
159
2b556e9a 160 and it's also on the wxWindows CD-ROM under Packages.