2 This file describes how to build BLT under Windows 95/98/NT/2000/XP.
4 It's not necessary to compile BLT for Windows 95/98/NT/2000/XP.
5 Binary versions are available on ftp.tcltk.com/pub/blt.
7 http://www.sourceforge.net/projects/blt/files/blt2.4z-for-8.0.exe
9 http://www.sourceforge.net/projects/blt/files/blt2.4z-for-8.1.exe
11 http://www.sourceforge.net/projects/blt/files/blt2.4z-for-8.2.exe
13 http://www.sourceforge.net/projects/blt/files/blt2.4z-for-8.3.exe
15 They will dynamically load into wish80.exe, wish81.exe, wish82.exe, or
16 wish83.exe by invoking
20 from within your script.
22 If you really need to build BLT yourself, then hold onto your hat.
23 It's a lot more difficult to build BLT under Windows than under Unix.
24 Most Windows software is designed to be delivered as a self-installing
25 binary executable, therefore it's rare to find the installation tools
26 necessary to build and install BLT from the source code.
28 1. What versions of Tcl/Tk can I use?
30 Any stable release. I've built and tested BLT with Tcl/Tk
31 versions 8.0.5, 8.1.1, and 8.2.3, and 8.3.4. Avoid the alpha and
34 2. What compiler can I use?
36 You can use one of the following compilers:
38 1. Microsoft Visual C++ 5.0/6.0
39 2. Cygwin's GNU CC 2.95.2 (with or without -mno-cygwin)
40 3. Borland Free compiler 5.5.1
42 I normally build with VC++ 6.0. This is also what the binary Tcl/Tk
45 Note: Unless it's your only option, I don't recommend using the
46 Borland free compiler right now.
48 3. What "make" program do I need?
50 I highly recommend installing the Cygwin tool suite. You can pick
53 http://sourceware.cygnus.com/cygwin/setup.exe
55 I normally use GNU make instead of Microsoft's nmake. But you can
56 also nmake. If you have a choice, use the Cygnus tools. For
57 compiling with Borland's C compiler, you can use Borland's make.exe.
59 4. Do I need to compile the Tcl/Tk libraries?
61 More than likely. Unless you're compiling with Cygwin GCC and the
62 cygwin-version of the Tcl/Tk libraries, you'll need to obtain the
63 Tcl/Tk sources and compile them.
65 5. Is there anything else I need?
67 By default, JPEG support is enabled. It uses the jpeg-6b
68 libraries from ftp.uu.net. You can pick up the sources from
70 ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
72 You can also use the Intel JPEG Libraries. JPEG support is
73 optional. You can disable it.
75 6. Can I mix-and-match DLLs?
77 You can't really mix the Borland and VC++ compiled DLLs. BLT isn't
78 stubbed and the symbol names are incompatible between versions.
79 The various workarounds are difficult.
81 I haven't tested this, but I believe you can load a GNU CC
82 (-mno-cygwin) BLT24.dll into a VC++ compiled wish.
84 In general the best advice is to use the same compiler that
85 that you compiled Tcl/Tk to compile BLT.
87 7. What compiler should I use?
89 Right now, probably Microsoft VC++. This is what all Tcl/Tk
90 releases 8.0 to present have been built with. So you shouldn't
91 have to work too hard to compile the Tcl and Tk libraries.
93 Having said that, Cygwin's GNU CC works just fine. You can
94 obtain versions from Mumit Khan to build Tcl and Tk. I recommend
95 compiling the Tcl/Tk libraries yourself with the -mno-cygwin
98 And if compiling Tcl and Tk is too much of a hassle, you can
99 always built BLT with the cygwin Tcl/Tk libraries (cygtcl80.dll
100 and cygtk80.dll). The downside is that the cygwin libraries are
101 1) pretty old (version 8.0) and 2) there may be some
102 incompatibilities between the native Win32 calls in BLT
103 and the cygwin emulation layer.
105 I have built BLT with the Borland free compiler. It's not
106 100% yet. The problems are
107 1) If you automatically load BLT from a script file, you
108 will generate exception in the DLL. Oddly enough,
109 you can source the script manually.
110 2) Resampled images are blank (see the graph3.tcl and eps.tcl
111 demos). The same code works with both GCC and VC++.
112 3) I can't even get wish83.exe to open a console window.
113 Weirdly, bltwish.exe does this properly.
114 4) The turbo debugger is a pain.
117 Building BLT with Microsoft VC++, Cygwin Make, and VC++ compiled
119 ===================================================================
121 1. Install the Tcl/Tk sources. They should reside in the
122 same directory tree as the BLT sources.
124 ______________|______________
126 blt2.4 tcl8.3.4 tk8.3.4 jpeg-6b
129 2. Build and install the Tcl and Tk libraries.
133 nmake -f Makefile.vc install
136 nmake -f Makefile.vc install
138 3. In the BLT directory, edit ./win/makedefs. Set the following
142 v1 = 8.3 Tcl/Tk version.
143 v2 = 83 Version number without dots.
144 v3 = 8.3.4 Suffix of Tcl/Tk directories
146 prefix = C:/Program\ Files/Tcl
147 Location of installed Tcl/Tk files.
148 TOOLS32 = C:/Program\ Files/Microsoft\ Visual\ Studio/VC90
149 Location of MS C compiler and tools.
152 4. Compile and install.
155 make -f Makefile.vc install
157 5. Add the location of BLT24.dll to your PATH variable and test
161 export PATH=/cygdrive/c/Program\ Files/Tcl/bin:$PATH
163 bltwish.exe graph1.tcl
165 Building BLT with Microsoft VC++, nmake, and VC++ compiled Tcl/Tk
167 ====================================================================
169 1. Install the Tcl/Tk sources. They should reside in the
170 same directory tree as the BLT sources.
172 ______________|______________
174 blt2.4 tcl8.3.4 tk8.3.4 jpeg-6b
177 2. Build and install the Tcl and Tk libraries.
181 nmake -f Makefile.vc install
184 nmake -f Makefile.vc install
186 3. In the BLT directory, edit .\win\makedefs. Set the following
190 v1 = 8.3 Tcl/Tk version.
191 v2 = 83 Version number without dots.
192 v3 = 8.3.4 Suffix of Tcl/Tk directories
194 prefix = C:/Program\ Files/Tcl
195 Location of installed Tcl/Tk files.
196 TOOLS32 = C:/Program\ Files/Microsoft\ Visual\ Studio/VC90
197 Location of MS C compiler and tools.
206 Since Windows doesn't provide tools to install software, we'll
207 use Tcl/Tk to do it. There's an install script in ./win/install.tcl.
208 Add the location of wish83.exe to your PATH and run wish83.exe.
210 wish83.exe ./win/install.tcl
215 bltwish.exe graph1.tcl
217 Building BLT with Cygwin GCC and mingw (-mno-cygwin) Tcl/Tk libraries.
218 ======================================================================
220 1. Install the Tcl/Tk sources. They should reside in the
221 same directory tree as the BLT sources.
223 ______________|______________
225 blt2.4 tcl8.3.4 tk8.3.4 jpeg-6b
228 2. Install the cygwin tool suite.
230 3. Build and install the Tcl and Tk libraries.
233 ./configure --prefix=/usr/local/tcl8.3.4
237 ./configure --prefix=/usr/local/tcl8.3.4
241 3. Compile and install BLT.
243 ./configure --disable-cygwin --prefix=/usr/local/tcl8.3.4
249 Add the location of wish83.exe to your PATH and run bltwish.exe.
252 bltwish.exe graph1.tcl
254 Building BLT with Cygwin GCC and the cygwin distribution Tcl/Tk
256 =============================================================
258 1. Install the cygwin tool suite.
260 2. Compile and install BLT.
262 ./configure --disable-cygwin --with-scriptdir=/usr/share --prefix=/usr
268 Add the location of wish83.exe to your PATH and run bltwish.exe.
271 bltwish.exe graph1.tcl
273 Building BLT with Borland bcc55 and Borland compiled Tcl/Tk libraries.
274 ======================================================================
276 1. Install the Tcl/Tk sources. They should reside in the
277 same directory tree as the BLT sources.
279 ______________|______________
281 blt2.4 tcl8.3.4 tk8.3.4 jpeg-6b
284 2. Build and install the Tcl and Tk libraries.
288 make -f Makefile.bc install
291 make -f Makefile.bc install
293 3. In the BLT directory, edit .\win\makedefs. Set the following
296 v1 = 8.3 Tcl/Tk version.
297 v2 = 83 Version number without dots.
298 v3 = 8.3.4 Suffix of Tcl/Tk directories
300 4. Edit .\src\Makefile.bc
302 prefix = C:\Program Files\Tcl
303 Location of installed Tcl/Tk files.
304 TOOLS32 = C:\Borland\BCC55\
305 Location of Borland C compiler and tools.
315 Since Windows doesn't provide tools to install software, we'll
316 use Tcl/Tk to do it. There's an install script in ./win/install.tcl.
317 Add the location of wish83.exe to your PATH and run wish83.exe.
319 wish83.exe ./win/install.tcl
324 bltwish.exe graph1.tcl