Better Explain support.
[ir-tcl-moved-to-github.git] / doc / ir-tcl.sgml
index 7a71169..75753f1 100644 (file)
@@ -1,14 +1,14 @@
 <!doctype linuxdoc system>
 
 <!--
 <!doctype linuxdoc system>
 
 <!--
-  $Id: ir-tcl.sgml,v 1.24 1998-01-16 09:24:18 adam Exp $
+  $Id: ir-tcl.sgml,v 1.28 1998-01-30 16:45:58 adam Exp $
 -->
 
 <article>
 <title>IrTcl User's Guide and Reference 
 <author><htmlurl url="http://www.indexdata.dk/" name="Index Data">,
 <tt><htmlurl url="mailto:info@indexdata.dk" name="info@indexdata.dk"></tt>
 -->
 
 <article>
 <title>IrTcl User's Guide and Reference 
 <author><htmlurl url="http://www.indexdata.dk/" name="Index Data">,
 <tt><htmlurl url="mailto:info@indexdata.dk" name="info@indexdata.dk"></tt>
-<date>$Revision: 1.24 $
+<date>$Revision: 1.28 $
 <abstract>
 This document describes IrTcl -- an information retrieval toolkit for
 Tcl and Tk that provides access to the Z39.50/SR protocol.
 <abstract>
 This document describes IrTcl -- an information retrieval toolkit for
 Tcl and Tk that provides access to the Z39.50/SR protocol.
@@ -36,9 +36,10 @@ However, the mOSI transport is only an option, and hence it is not
 needed unless you wish to communicate within an OSI environment.
 See &lsqb;ref 2&rsqb; for more information about the XTI/mOSI implementation.
 
 needed unless you wish to communicate within an OSI environment.
 See &lsqb;ref 2&rsqb; for more information about the XTI/mOSI implementation.
 
-<sf/IrTcl/ is implemented as a <it/dynamic/ library (DLL) which is 
-dynamically loaded by using the <tt/load/ command. However, <sf/IrTcl/
-may also be compiled as a traditional <it/static/ library as well.
+<sf/IrTcl/ is normally implemented as a <it/dynamic/ library (DLL)
+which is dynamically loaded by using the Tcl command <tt/load/.
+However, <sf/IrTcl/ can be compiled as a traditional <it/static/
+library as well.
 
 <sect>Compilation and installation
 
 
 <sect>Compilation and installation
 
@@ -47,19 +48,19 @@ In order to compile you need:
 <itemize>
 <item> An ANSI C compiler such as GNU C.
 <item> <htmlurl url="http://sunscript.sun.com/TclTkCore/" name="Tcl">.
 <itemize>
 <item> An ANSI C compiler such as GNU C.
 <item> <htmlurl url="http://sunscript.sun.com/TclTkCore/" name="Tcl">.
- Version 7.X and 8.0 has been tested.
-<item> <htmlurl url="http://www.indexdata.dk/yaz.html" name="YAZ">
+ Version 7.5, 7.6 and 8.0 has been tested.
+<item> <htmlurl url="http://www.indexdata.dk/yaz/" name="YAZ">
  version 1.4 or higher.
 </itemize>
 
 As an option you may want:
 <itemize>
 <item> <htmlurl url="http://sunscript.sun.com/TclTkCore/" name="Tk">.
  version 1.4 or higher.
 </itemize>
 
 As an option you may want:
 <itemize>
 <item> <htmlurl url="http://sunscript.sun.com/TclTkCore/" name="Tk">.
-Version 3.6, 4.X and 8.0 has been tested.
+Version 4.1, 4.2 and 8.0 has been tested.
 <item> XTI/mOSI
 </itemize>
 
 <item> XTI/mOSI
 </itemize>
 
-Unpack the <sf/IrTcl/ package at the same directory level as <bf/YAZ/. 
+Unpack the <sf/IrTcl/ package at the same directory level as <bf/YAZ/.
 
 Type:
 <tscreen><verb>
 
 Type:
 <tscreen><verb>
@@ -69,11 +70,22 @@ $ ./configure
 This command tries to configure <sf/IrTcl/ for your system and creates
 a <tt>Makefile</tt>.
 
 This command tries to configure <sf/IrTcl/ for your system and creates
 a <tt>Makefile</tt>.
 
-If the <tt>configure</tt> command cannot locate Tcl and Tk in your standard
-locations for libraries searched by your C compiler it will guess 
-that the libraries are located in <tt>/usr/local/lib</tt> and that 
-the header files are located in <tt>/usr/local/include</tt>. 
-If this is incorrect you will have to modify the <tt>Makefile</tt> yourself.
+The <tt>configure</tt> command tries to locate the file <tt/tclConfig.sh/
+which should be generated by Tcl's installation script. Configure
+looks for your Tcl shell in order to locate this file. For example
+if <tt/tclsh/ is located in <tt>/home/joe/bin</tt>, configure will
+assume that <tt>tclConfig.sh</tt> is installed in <tt>/home/joe/lib</tt>, 
+in which case the prefix is <tt>/home/joe</tt>. If you have
+more than one Tcl version installed on your system, or if configure
+cannot find the Tcl shell in your path, you can specify the prefix
+by adding <tt>--prefix=</tt>prefix to the configure command, i.e.
+<tscreen><verb>
+$ ./configure --prefix=/home/joe
+</verb></tscreen>
+
+The prefix is also used to determine where <sf/IrTcl/ is installed.
+The <sf/IrTcl/ executables are installed in prefix/bin and libraries
+and support files are installed in prefix/irtcl.
 
 Compile <sf/IrTcl/ by typing:
 <tscreen><verb>
 
 Compile <sf/IrTcl/ by typing:
 <tscreen><verb>
@@ -85,7 +97,7 @@ will create the shared library, <tt/irtcl.so/, as well as the
 normal static library, <tt/libirtcl.a/.
 
 For Tcl versions that doesn't support dynamic libraries the
 normal static library, <tt/libirtcl.a/.
 
 For Tcl versions that doesn't support dynamic libraries the
-command will create two shells will build-in <sf/IrTcl/ support --
+make command will create two shells will build-in <sf/IrTcl/ support --
 a Tcl shell called <tt/ir-tcl/ and a Tcl/Tk shell called <tt/ir-tk/.
 The traditional static library, <tt/libirtcl.a/, is build as well.
 
 a Tcl shell called <tt/ir-tcl/ and a Tcl/Tk shell called <tt/ir-tk/.
 The traditional static library, <tt/libirtcl.a/, is build as well.
 
@@ -131,7 +143,7 @@ This file is only generated when using newer versions of Tcl.
 <tag><tt>ir-tcl.h</tt></tag> The <sf/IrTcl/ header file.
  Installed in <tt>INCDIR</tt> -- defaults to <tt>/usr/local/include</tt>.
 
 <tag><tt>ir-tcl.h</tt></tag> The <sf/IrTcl/ header file.
  Installed in <tt>INCDIR</tt> -- defaults to <tt>/usr/local/include</tt>.
 
-<tag><tt>clientrc.tcl</tt></tag> A setup file with definitions
+<tag><tt>irtdb.tcl</tt></tag> A setup file with definitions
  of target and queries. Read and updated by <tt>client.tcl</tt>. Installed
  in <tt>IRTCLDIR</tt> -- defaults to <tt>/usr/local/lib/irtcl</tt>.
 
  of target and queries. Read and updated by <tt>client.tcl</tt>. Installed
  in <tt>IRTCLDIR</tt> -- defaults to <tt>/usr/local/lib/irtcl</tt>.
 
@@ -173,8 +185,9 @@ and the dynamic version goes like:
 
 <p>
 If your Tcl/Tk supports dynamic libraries you can use the
 
 <p>
 If your Tcl/Tk supports dynamic libraries you can use the
-<tt/load/ command as described in the previous section. If not,
-you must use the <tt>ir-tk</tt> shell that acts as <tt>wish</tt>
+<tt/load/ command from within <tt/wish/ as described in the previous
+section.
+If not, you must use the <tt>ir-tk</tt> shell that acts as <tt>wish</tt>
 except that it includes the <sf/IrTcl/ commands.
 
 The enclosed script <tt>client.tcl</tt> is a graphical client
 except that it includes the <sf/IrTcl/ commands.
 
 The enclosed script <tt>client.tcl</tt> is a graphical client
@@ -182,17 +195,17 @@ 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. 
 
 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 using a dynamic library use:
+To start the client with dynamic library support use:
 <tscreen><verb>
 $ wish -f client.tcl
 </verb></tscreen>
 
 <tscreen><verb>
 $ wish -f client.tcl
 </verb></tscreen>
 
-Note: some installations a slightly different name for wish, eg.
-<tt/wish8.0/.
+Note: Substitute the real name for the wish interpreter above, for
+version 8.0 it is probably called <tt/wish8.0/.
 
 To start the client without dynamic library support use:
 <tscreen><verb>
 
 To start the client without dynamic library support use:
 <tscreen><verb>
-$ ir-tk -f client.tcl
+$ ./ir-tk -f client.tcl
 </verb></tscreen>
 
 The client lets up define targets and query types within the interface.
 </verb></tscreen>
 
 The client lets up define targets and query types within the interface.
@@ -1120,7 +1133,7 @@ consists of 5 elements:
 
 <bf/Example/
 
 
 <bf/Example/
 
-Consider the GRS-1 record below as shown by the Yaz client program:
+Consider the GRS-1 record below as shown by the <bf/YAZ/ client program:
 
 <tscreen><verb>
 (1,1) OID: GILS-schema
 
 <tscreen><verb>
 (1,1) OID: GILS-schema
@@ -1450,14 +1463,17 @@ Email: info@indexdata.dk
 <p>
 
 <descrip>
 <p>
 
 <descrip>
-<tag>1 Ousterhout, John K.:</tag>
+<tag>1 IrTcl Homepage</tag>
+<htmlurl url="http://www.indexdata.dk/irtcl/"
+name="http://www.indexdata.dk/irtcl/">
+<tag>2 Ousterhout, John K.:</tag>
 Tcl and the Tk Toolkit. Addison-Wesley Company Inc (ISBN
 0-201-63337-X). The Tcl/Tk toolkit home page is
 <tt><htmlurl url="http://www.sunscript.com"
  name="http://www.sunscript.com"></tt>.
 The primary ftp site is <tt><htmlurl url="ftp://ftp.smli.com/pub/tcl/"
 name="ftp://ftp.smli.com/pub/tcl/"></tt>.
 Tcl and the Tk Toolkit. Addison-Wesley Company Inc (ISBN
 0-201-63337-X). The Tcl/Tk toolkit home page is
 <tt><htmlurl url="http://www.sunscript.com"
  name="http://www.sunscript.com"></tt>.
 The primary ftp site is <tt><htmlurl url="ftp://ftp.smli.com/pub/tcl/"
 name="ftp://ftp.smli.com/pub/tcl/"></tt>.
-<tag>2 Welch, Brent B.:</tag>
+<tag>3 Welch, Brent B.:</tag>
 Practical Programming in Tcl and Tk. Prentice Hall
 (ISBN 0-13-616830-2).
 
 Practical Programming in Tcl and Tk. Prentice Hall
 (ISBN 0-13-616830-2).