Commit 0d738336 authored by Per Cederqvist's avatar Per Cederqvist
Browse files

Document the new configuration scheme. Still needs more work.

parent 2731e899
#
# $Id: INSTALL,v 1.11 1993/10/03 16:01:09 ceder Exp $
# Copyright (C) 1991 Lysator Academic Computer Association.
# INSTALL -- installation instructions for the LysKOM server
# $Id: INSTALL,v 1.12 1993/10/14 22:42:51 ceder Exp $
# Copyright (C) 1991, 1993 Lysator Academic Computer Association.
#
# This file is part of the LysKOM server.
#
......@@ -31,44 +31,16 @@ doesn't support prototypes you'd better get gcc (the GNU C compiler).
It is available freely via anonymous from many sites, e.g. isy.liu.se
or prep.ai.mit.edu.
Our intention was to write LysKOM as portable as possible.
Unfortunately we have used some constructs that are extensions of gcc
in a few places. It shouldn't be too hard to rewrite those parts (but
since gcc is the only compiler that supports prototypes that we have we
cannot tell).
The server was written with the assumption that full prototypes was
available for all functions in the standard libraries, so we don't
cast our pointers. This could lead to errors if no function prototypes
are given by the include files.
2) ld -L
If your ld doesn't support the -L flag (or if it is used for something
else than to tell ld where libraries are found) you will have to move
the libraries manually during the build process. Hint: GNU ld supports
-L.
3) Non-standard make
The Makefiles are written for GNU Make. If you don't want to get it
(and don't have a Sun - Suns' make can handle the extension) you could
edit the Makefiles manually. The only GNU extension we use is the
"include" directive. But since we use it a lot of times, and there are
about 18 Makefiles, you probably will have LysKOM up and running
faster if you fetch GNU Make.
2) Decent make
4) libauth
We use the "include" statement in our Makefiles. Get GNU make if your
make does not support it.
The server can be configured to use the libauth library. It finds out
the username of each person that logs on to the system via the IDENT
protocol. If you want this feature you must also fetch and install
libauth on your system. It is available from
ftp.lysator.liu.se:pub/ident/libs/libauth-<version>.tar.gz.
You can run a lyskom server without this library. Just omit the
RFC_931 define from the config file.
INSTALLING
......@@ -77,38 +49,6 @@ In the following, $T stands for the directory in which this file
(INSTALL) resides.
1) Decide what computer system you are using. Currently, you can choose
one of the following:
sun3, sun4 - A Sun running sunos 4.1.1. Might work with other
os-versions as well. Set $H=sun4os4
balance - A Sequent Balance 8000 running Dynix 2.1.1 (yes,
that old version still lives at Lysator!) with
modified include files. Our include files now
declare most functions with full prototypes.
Set $H=balance
vax - A Vax 11/750 running bsd 4.3.
Set $H=vax
2) Edit $T/config/$H-defs.make.
We have used a lot of GNU programs to build the server. You could
just change "gawk" to "awk" if you don't have gawk. CC should be a C
compiler that supports prototypes. If your ranlib doesn't support
the -t flag, just omit it in the definition of TOUCHLIB. If your ld
doesn't support the -L flag take it out from LDFLAGS. See also step
7 below. If you are running SunOS 4.1.1 you must omit the
"-lresolv" (but see the commment in the file!)
3) Edit $T/config/$H-config.h
The file $T/config/config-template.h lists all options. You
shouldn't need to change this file if you are compiling LysKOM on a
sun.
4) Edit $T/src/server/server-config.c.
The things that you might want to change are:
......@@ -162,11 +102,22 @@ lyskom-mux 4895/tcp # LysKOM server (MUX)
6) Type
./Config $H
./configure
This takes some 1.5 minutes on a Sun 3/80.
This creates a shell script named "config.status" and runs it.
That shell script creates the Makefiles that are needed to compile
LysKOM. It contains a very large sed statement, which breaks some
operating systems/versions of sed. If that happens, try running
"fixconfig":
7) If your ld supports -L, type
./fixconfig
./config.status
"fixconfig" works by splitting the sed statement into two. If the
argument list is still too large, you could probably split the sed
statement into more parts.
7) Type
./Build
......@@ -174,27 +125,18 @@ lyskom-mux 4895/tcp # LysKOM server (MUX)
./Build >build.log 2>&1 &
and wait... If your ld does not support -L do this (supposing your
ld searches for libraries in /usr/local/lib):
make depend
make libraries
pushd src/libraries
for i in libansi/libansi.a libcommon/liblyskom-server.a \
libisc/libisc.a libmisc/libmisc.a
do
cp $i /usr/local/lib/$i
done
make binaries
src/server/lyskomd and src/server/dbck should now be built. If you
get an error message from ld about libresolv.a just omit "-lresolv"
from LIBS in src/server/Makefile, or fix your resolv library. The
message might look like
and wait... This will build src/server/lyskomd and
src/server/dbck. If you get an error message from ld about
libresolv.a just omit "-lresolv" from LIBS in src/server/Makefile,
or fix your resolv library. The message might look like
gethostnamadr.o: Undefined symbol __GLOBAL_OFFSET_TABLE_ referenced from
text segment
The file session.c will not compile with gcc 2.4.5 on an HP
9000/300 unless you manually turn of the optimization for that
file. gcc gets an internal error. The bug has been reported to
FSF, so future versions of gcc should not exhibit this problem.
8) Ask root to create a user `lyskom' (or a name of your choice).
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment