-------------------------------------------------------------------------
get stk.tar.gz from ftp://cs.nyu.edu/pub/local/fox/stk  or
                    ftp://kaolin.unice.fr/pub.  Install it
after configuring with the following:

(non-linux:)

./configure --prefix=... --exec-prefix=...  --enable-hash --enable-stklos \
            --disable-dynload

(linux:)

./configure --prefix=~/STk_inst --exec-prefix=~/STk_inst/exec \
  --enable-hash --enable-stklos --disable-dynload --disable-elf --disable-dld


You won't need to do all of this enabling and disabling in the next release
of STk, but it's needed for now.  

After configuring, it's:
make
make install
make install.libs

for use:

set an environment variable STK_LIBRARY to 
    $(prefix)/lib/stk/3.0b2

You should be able to run stk now.  Try:
STk>  (require "Tk-classes")
STk>  (define c (make <canvas>))
STk>  (pack c)
STk>  (bye)
-------------------------------------------------------------------------

*****************************************************************************
NOTE:  if you run g++ 2.6.3, you must ensure that it includes the following
patch:  ftp.cygnus.com:pub/g++/gcc-2.6.3-template-fix
.  Otherwise, you will see "multiply defined" errors at link time. 
*****************************************************************************

LINK's Makefile is created by the "configure" script in this directory.
The configuration process uses the file "Makefile.in" as input, so any
changes necessary to the Makefile should be placed in Makefile.in,
then the configuration script should be run again.

At the moment, there is no "install" target;  the executable is placed
in the $LINKBASE/src subdirectory (Define this directory to be $LINKBASE).
LINK is run.

In most cases, the only responsibilities of the user during compilation 
should be to modify the Config.mk file to tell the configuration script
where to find the tcl and tclX distributions.  But this will not be 
necessary if they are publicly installed.

The installation process: (preliminary

set environment variables:
NEWLINKBASE :	<this directory>
STK_LOAD_PATH : <this_directory/stklos> 
STK_LIBRARY :   <see the STk installation> (will be .../lib/stk/3.0b2)


cd $NEWLINKBASE/autowrap
make -f Make.autowrap instantiate
make -f Make.autowrap gen_methods
make -f Make.autowrap install  // puts them in $NEWLINKBASE/bin - add to your
                               // execution path

$NEWLINKBASE/bin/ngentemplates	// generates template instantiation files

cd $NEWLINKBASE
./configure
make 
make libs  # not tested too well (used to modify -lgraph to be linkable with
				  standalone C++ programs using link libs.)

cstring problem:
if you see this:
----------------------
rom STkTemplateFiles.cc:2:
                                                                               /usr/local/lib/g++-include/std/cstring.h:33: declaration of C function `char * strchr(char *, int)' conflicts with
                                                                               /usr/local/lib/g++-include/std/cstring.h:30: previous declaration `const char * strchr(const char *, int)' here
----------------------
it's an stk.h problem.  Move the includes out from within the extern C
environment in stk.h (this hack until the stk distribution is fixed).


Running LINK: (make sure $NEWLINKBASE/src is in your execution path)

link

Please don't hesitate to report problems to Jonathan Berry, the
project coordinator at:

berryj@dimacs.rutgers.edu

NOTE: if you want to look around in the code, see the $NEWLINKBASE/bin
      directory.  the svi and sgrep commands are especially useful.
