In order to compile the software on UNIX you need:
As an option you may want:
Unpack the
Type:
$ ./configure
This command tries to configure Makefile
.
The configure
command tries to locate the file tclConfig.sh
which should be generated by Tcl's installation script. Configure
looks for ther Tcl shell on your system in order to locate this file.
For example if tclsh
is located in /home/joe/bin
, configure will
assume that tclConfig.sh
is installed in /home/joe/lib
,
in which case the prefix is /home/joe
. If you have
more than one Tcl version installed on your system, or if configure
cannot find the tclConfig.sh
, you can specify in which directory
it is, by supplying option --with-tclconfig
- for example:
$ ./configure --with-tclconfig=/home/joe/lib
The
Compile
$ make
For Tcl versions that support dynamic libraries the command above
will create the shared library, irtcl.so
, as well as the
normal static library, libirtcl.a
.
For Tcl versions that doesn't support dynamic libraries the
make command will create two shells will build-in ir-tcl
and a Tcl/Tk shell called ir-tk
.
The traditional static library, libirtcl.a
, is build as well.
To install the programs and support files type:
$ make install
If you wish to install man pages type:
$ make install.man
Summary of files installed (the names refer to the Makefile variables):
irtcl.so
The IRTCLDIR
.
This file is only generated when using newer versions of Tcl/Tk.
ir-tk
The BINDIR
-- defaults to
/usr/local/bin
. ir-tk
works like
wish
— without arguments it reads commands from stdin.
A source file may be specified by option -f
. ir-tk
accept the same set of options as wish
.
ir-tcl
The BINDIR
-- defaults to /usr/local/bin
.
client.tcl
A graphical client for ir-tk
.
The client is installed as an executable script called irclient
in
BINDIR
. This client needs a number of files, bitmaps, etc.
The client looks for the files in the current directory — if
this fails it tries to look in the directory IRTCLDIR
-- defaults to /usr/local/lib/irtcl
.
libirtcl.a
The LIBDIR
-- defaults to /usr/local/lib
.
ir-tcl.h
The INCDIR
-- defaults to /usr/local/include
.
irtdb.tcl
A setup file with definitions
of target and queries. Read and updated by client.tcl
. Installed
in IRTCLDIR
-- defaults to /usr/local/lib/irtcl
.
formats/*
Display format files written
in Tk. Read by client.tcl
. Installed
in IRTCLDIR
-- defaults to /usr/local/lib/irtcl
.
bitmaps/*
Various bitmap files. Read by
client.tcl
. Installed
in IRTCLDIR
-- defaults to /usr/local/lib/irtcl
.
LICENSE
LICENSE file. Read by
client.tcl
. Installed
in IRTCLDIR
-- defaults to /usr/local/lib/irtcl
.
Basic Tcl is handled by the program tclsh
. The script
must use the load
command to load the ir-tcl
program
should be used instead, since that program is statically linked
with the
So the static, non-dynamic, version goes like this:
$ ir-tcl
%
and the dynamic version goes like:
$ tclsh
% load ./irtcl.tcl
%
Start an MS-DOS prompt and switch the sub directory WIN
where
the file makefile
is located. Customize the installation
by editing the makefile
file (for example by using wordpad).
The following summarises the most important settings in that file.
YAZDIR
Specifies where YAZ is located.
DEBUG
If set to 1, the software is compiled with debugging libraries. If set to 0, the software is compiled with release (non-debugging) libraries.
When satisfied with the settings in the makefile type
nmake
If compilation was successful the executables irtcl.dll
is put in directory BIN
.
To start the test client that comes with YAZ.DLL
and IRTCL.DLL
are in current directory
or in your PATH. Go to the top-level directory of
If your Tcl/Tk supports dynamic libraries you can use the
load
command from within wish
as described in the previous
section.
If not, you must use the ir-tk
shell that acts as wish
except that it includes the
The enclosed script client.tcl
is a graphical client
which demonstates an example of a user interface for the Z39.50/SR protocols.
At first the script was relatively small but it has grown since the
beginning. At present it is about 3000 lines.
To start the client with dynamic library support use:
$ wish -f client.tcl
Note: Substitute the real name for the wish interpreter above, for
version 8.0 it is probably called wish8.0
.
To start the client without dynamic library support use:
$ ./ir-tk -f client.tcl
The client lets up define targets and query types within the interface. Hence, you will not need to modify configation files.
Stuff concerning targets can be found in the pull down menu 'Target' with the following options:
Establishes connection to a target.
Closes a target connection.
Shows implementation Id, implementation Version, etc for the current target.
Pops up a target definition window. You may alter a target definition.
Lets you define a new target.
The term query type refers to a collection of search fields. The pull down menu Options|Query deals with queries. You may insert/modify/remove query types.