To use sqlscreens, you will need a number of external software packages:
In order to access the databases, the basic TCL interpreter must be augmented with a database access module:
If you're reading this in a browser, there is a download page where you can get the sqlscreens package and which also points to the other pieces.
The package comes as a gzipped tar file named something like sqlscreens-X.Y.Z.tar.gz.
Unpacking the file (gunzip < sqlscreens-X.Y.Z.tar.gz | tar xvf -) will create a top directory named like sqlscreens-X.Y.Z.
X is the major release number. Y is the minor release. Z is the bug fix release number. Don't make too much of it...
First, if needed, compile and install TCL and TK (untar; cd tcl8.../unix;configure;make;make install, same for tk). tcl and wish will probably be installed as "/usr/local/bin/tclsh8.0" and "/usr/local/bin/wish8.0". The sqlscreens Makefile expects to find "tclsh" and "wish". Please make a link, and ensure that your PATH is setup to execute the correct copy of tclsh and wish.
The next step is to add database-access capability to the standard TCL/TK wish interpreter. This can be done in two ways, either by statically linking the database access module (mysqltcl or isqltcl) with the interpreter or by using the TCL load facility and a shared library. The dynamic version sometimes need some manual tweaking to work.
The Makefile in the sqlscreens directory only supports MySQL internally. If you will be using isqltcl and INFORMIX, follow the installation instructions in the isqltcl package to generate the interpreter.
For ODBC, you should first install the driver manager, the driver(s) you need and the tclodbc TCL extension. Follow the instructions in each package.
Both the static and dynamic load methods are supported by the build tools in the sqlscreens directory. Only Linux (RedHat 4.1/4.2), SOLARIS, and FreeBSD 2.2.x have been tested, it is not guaranteed to work on other systems. The Makefile generated by configure is small, it should be easy to adjust if needed.
The configuration script only looks for the MySQL library in /usr/local/mysql/lib and /usr/local/lib/mysql. If your installation is different, please make symbolic links or modify the scripts.
When you're ready:
If you use TCL with other statically linked extensions, and want to use the same interpreter with sqlscreens, you will have to add the Mysqltcl_Initcall to your usual tkAppInit file and modify your Makefile to link with mysqltcl.o. You've probably been through this already. Have a look at the included tkAppinit.c
Because the dynamic version is sometimes a pain to build, the sample scripts are now set up to be executed by mysqlwish by default (for MySQL). If you managed to get the dynamic version to build, you'll certainly find it easy to change the first line in the scripts...