File: INSTALL

package info (click to toggle)
saml 970418-3
  • links: PTS
  • area: main
  • in suites: slink
  • size: 1,204 kB
  • ctags: 1,701
  • sloc: ansic: 17,182; sh: 2,583; yacc: 497; perl: 264; makefile: 250; python: 242
file content (60 lines) | stat: -rw-r--r-- 2,592 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
REQUIREMENTS
============

To build saml(3), you need a Un*x system, and gcc 2.5.0 or more. The
library takes advantage of many gcc extensions: arrays of length zero,
conditional expressions without middle operand, automatic arrays of
variable length, inline functions, 64-bit integers, and assembler. So
you really need gcc, not any ISO C compiler.

The Makefiles require GNU make. Either get GNU make, or fix the
makefiles yourself.

The code has not been tested on 64-bit machines.

Some machines have a C library with is incompatible with ISO/POSIX. For
instance, SunOS doesn't have strtol/strtoul nor memmove, and
realloc(0,size) doesn't work. On these machines you'll have to replace
the missing or broken functions. You'll also need getopt_long() which
exists only in glibc.  And you may want to install Doug Lea's malloc
replacement. To include all this in libsaml.a, copy the appropriate files
of lib/support into lib (or use symbolic links) and edit lib/Makefile.

Many scripts require perl(1); factorint and induce requires gdbm(3).
Here again, you really need gdbm, not dbm/ndbm nor Berkeley db. Induce
also requires a not-too-ancient version of the m4(1) preprocessor. On
SunOS you should use /usr/5bin/m4 -- see the comments in
induce/Makefile.

It is very desirable to compile samuel(1) with readline(3) support,
unless you're a masochist.  Either get the "official" GNU readline
library, preferably as a shared library since it's very very big, or use
the little editline(3) clone written by Rich Salz and Simmule Turner;
I've put it in lib/editline.shar. It doesn't have all the bells and
whistles of the GNU version (most importantly, it doesn't handle line
wrapping) but it's ten times as small. See the comments in
samuel/Makefile.

COMPILATION
===========

The main Makefile shouldn't require changes. Examine, and modify where
appropriate, {lib,samuel,induce,factorint}/Makefile, and also
make.common in the root directory. When everything looks fine, type
"make" in the root directory. It should create the library (libsaml.a or
.so), and the utilities: samuel, factorint, induce.

INSTALLATION
============

You put the files where you want, but remember, it's experimental
software. Essentially you need to put samuel, factorint, induce,
colorize, rgind and all the fn_* scripts somewhere in your path.  Put
the manpages (samuel.1, factorint.1, induce.1) and saml-doc.texi in
accessible places for easy reference, or print them.

Then test the software. If it doesn't behave like the docs say it should,
then it's a bug. Otherwise, it's a feature.

Have fun,
Thierry