This file is INSTALL.  It contains installation instructions for expect.

Edit the beginning of the Makefile, so that the destinations and
dependencies are correct.

Run "make install" (or just "make" if you want to try the code before
installing it).  Note that the version for the Cray must be setuid
since you must be root to open ptys on that system.

A handful of people running "pure" 4.2BSD systems have noted that
expect fails to link due to lack of getopt and vprintf.  You can get
these from uunet or any good archive site.

Some scripts are included in the test directory that you can try:

	kibitz - lets two people control a program at the same time.
		Lots of uses.  I.e., You can help another person remotely.
		Can run an editor and log a transcript of a conversation.
	rogue.exp - finds a good game of rogue.
	ftp.exp	- retrieves /etc/passwd from a system using ftp.
	chess.exp - has two chess games play each other.
	passwd.exp - runs passwd non-interactively (you must be root).
	passmass - sets passwd on many machines simultaneously.
	passmass.root - early version of above, for root only. 
	passmass - sets root passwd on a group of machines simultaneously.
	time.exp - run a program for only a given amount of time.
	lpunlock - unhangs a printer which says it is "waiting for lock".
	timed_read - a timed read for the shell
	dvorak - dvorak keyboard
	weather - retrieves weather forecasts.
	rftp - recursive ftp (assumes UNIX-style ftpd at other end).
	archie - mails back response after talking to archie ftp-catalog.
	gethostbyaddr - translates internet address to name (with a higher
		success rate than nslookup).  Easier to use, too.
	ftp-rfc - ftp a DoD RFC from uunet
	robohunt - plays the game of hunt (from Berkeley)
		It's more of a wild player than good, but amusing to watch.
		Fun to throw against people who don't know about it.
	rlogin.exp - rlogin giving you same current directory

To run, for example, chess.exp, type:

	expect chess.exp

If expect is installed and your system supports the #! magic you can
invoke it as just:

	chess.exp

Each of these examples necessarily depends upon other binaries in the
system.  For example, chess.exp depends upon the "usual" UNIX chess
program being present.  If any of these programs are different,
it may cause the associated script to misbehave.

Please use the ".exp" extension on scripts that might otherwise have
names that could be confused with the real program, such as "rogue.exp".
Scripts that have unique names do not need the extension, such as
"lpunlock".


Sample C and C++ programs that use the expect library (libexpect(3))
are also in the test directory:

	chesslib.c - same thing as chess.exp, but in C.
	chesslib2.c - ditto, but uses popen and stream-style I/O.
	chesslib++.c - ditto, but for C++.

You may change the value of CC or CPLUSPLUS in the Makefile, to
compile under gcc (yes, expect runs under gcc or g++) or other
compilers.  Note that you will almost certainly have to edit the lines
defining where the libraries are.
