INSTALLATION

Road-map:
--------
 This new release is based on tcl7.5
 You can build dynamically loadable modules for the Bin package
 as well as stand-alone executable.

 If you use an earlier version have a look at oldTcl/ 

 ( you can also build a stand-alone tcl7.5+tclX7.5 with proper editing
   of makefile in that directory and replacing tclXAppInit.c link
   from tclXAppInit_7.3.c to tclXAppInit_7.5.c )

 This release is the first using GNU autoconf
 You should not have to do any editing
 If you have too, please report

 [ 
  Tested to compile out of the box (once Tcl7.5 is properl installed)
  on (plz send new OS and comments) : 

    OS                |  Remarks
    ++++++++++++++++++|++++++++++
    HPUX8             | fine!
    IRIX5.3           | fine!
    Solaris 2.4       | fine!
    OSF1 3.2          | fine! (had to force configure to allow shared in tcl)
    ConvexOS 11.0     | fine but without shared libs (tcl).
    Linux 1.3.89 elf  | fine (add to twickle by hand tcl conf for shared libs)
    Linux 1.2.13 a.out| fine (no shared)
    SunOS 4.1         | dynamic loading conflict with md5 
	              | (two different copies of bin are loaded see
                      |  load-bug.tar.gz)
    AIX 3.2           | same as above plus -ltcl7.5 -lc needed to link 
                      | the shared libs

  SunOS and FreeBSD need to edit generated Makefile to add the dummy ".1.0"
  needed for their SH_LIB
  Pre compiled loadable libs for systems on which I have access and 
  I managed to build them on are available on
  ftp://ftp.lyot.obspm.fr/tcl/tclbin/bin-distrib/ 
 ]

Compilation:
------------

   ./configure   
or ./configure --with-tcl=<directory where is located tclConfig.sh>

{see also ./configure --help and binconf.h.in for other compile options}

   make

   make test

(if your system supports dynamic loading)
   make dltest  

   make install

   
Classic use
-----------
copy libtclbin.a to /usr/local/lib for instance,

You can add the binary data functionalities to any tcl shell or wish
simply by adding 
    /*
     * Add in Object management
     */
    if (Bin_Init (interp) == TCL_ERROR) {
        return TCL_ERROR;
    }
to your *AppInit.c
and link  your tcl shell/wish with -ltclbin

Dynamic use
-----------

  make install

  and read instructions about pkgIndex

You can then use the bin_* function simply by putting
"package require Bin"
at the beginning of your scripts

enjoy!

See the README for more informations,... 

Laurent Demailly
dl@hplyot.obspm.fr
