DOWNLOAD
8527 Hits
Created on  11/08/2004 18:44
The BLT Tcl/Tk extension, precompiled for Cygwin. This package is needed to run OMNeT++ 3.x on Cygwin. The Cygwin distribution doesn't contain BLT, and although it's easy to build BLT from sources, the result still needs to be patched up. Read on for install instructions.

INSTALLATION:
cd /
tar xvfz ~/blt-2.4z-cygwin.tgz

Then edit ~/.bash_profile and add the following line:
export TCL_LIBRARY=/usr/share/tcl8.4

Verify your installation by typing wish and "package require BLT".


REBUILDING THE PACKAGE:

Get BLT source files from:
http://sourceforge.net/projects/blt

Follow the steps below:

tar xvfz BLT2.4z.tar.gz
patch < blt2.4z-patch-1
patch < blt2.4z-patch-2

In blt2.4z/src/missing.h line 44, comment out #define DM_SPECVERSION
(leaving it in causes heaps of "redefinition" warnings)

library/treeview.tcl line 71, change
if { $tk_version >= 8.3 } {
to
if {0} {

cd blt2.4z
./configure
make
make install

mv /lib/blt2.4/ /usr/share/

cd /
tar cvfz ~/blt-2.4z-cygwin.tgz \
usr/bin/cygBLT* \
usr/bin/cygblt* \
usr/lib/libBLT* \
usr/include/blt*.h \
usr/share/blt2.4 \
usr/man/man3/Blt_* \
`grep -l BLT usr/man/mann/*.n`

The treeview.tcl modification is necessary to prevent getting
Error: bad cursor spec "@/usr/share/blt2.4/treeview.cur"
whenever the treeview or multi-columns listbox widget is used. The file
name gets passed to the Windows LoadCursor() API which obviously doesn't
understand Cygwin's /usr/share... path. And converting it to a Windows
path (c:\cygwin..) doesn't seem to be very easy.