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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
Installation of the SIPP Library
================================
This file describes the installation of the SIPP rendering library.
You should install not only the library itself, but also the on-line
documentation so that your users will know how to use it. You can
create typeset documentation from the file 'sipp.texinfo' as well as
an on-line Info file. The following steps are also described in the
texinfo manual in the chapter 'Installation'.
I. Installing the C library
Edit the file 'Makefile' to reflect the situation at your site. The
things you might have to change are clearly marked in the beginning of
that file. They are also described below.
* The 'NOVOID' definition should be used if the C compiler on your
system does not understand the type 'void'.
* If the C library on your system does not contain the functions
'memcpy()' or 'memset()', or the include file 'memory.h'does not
exist, you should use the 'NOMEMCPY' definition.
* If your system does not support the 'alloca()' function, the
'ALLOCA' definition should be used. This will cause SIPP to use
the portable version of 'alloca()' available from the GNU project.
* The definitions of 'LIBDIR', 'INCLUDEDIR', 'MANDIR' and 'MANEXT'
determines where in your file hierarchy SIPP will be installed.
'LIBDIR' is the directory where the final library file (libsipp.a)
will be placed. When a program that uses SIPP is linked, this
directory should be in the path where the linker looks for
libraries, either direct or with the aid of the '-L' switch.
'INCLUDEDIR' is the directory where the includefiles necessary to
use SIPP will be placed. When a program that uses SIPP is
compiled, this directory should be in the path where the compiler
searches for include files, either direct or with the aid of the
'-I' switch. 'MANDIR' is the directory in which to place the UNIX
style manual page provided with SIPP. 'MANEXT' determines what
extension that manual file will get.
* If you are on a Sun you can create SIPP as a shared library (it is
possible that this work for other systems too, but I have no way of
testing that). Uncomment the definitions of LIBSH and LIBHINST and
choose a set of C-compiler flags to match your setup.
Apart from these SIPP specific definitions, the usual C compiler and
flags to this compiler must of course be set to values suitable on your
system.
The only other item, apart from the Makefile, is a definition in the
includefile 'sipp.h' in the 'libsipp' directory. In this file a macro
called 'RANDOM()' is defined. If your system does not have the
'drand48()' function, you must change this definition. The macro
should return a random floating point number in the range (-1, 1).
By just typing 'make' in the 'sipp-3.1' directory, the library and
the demonstration programs will be compiled. The library is not
installed, but only compiled in place.
By typing 'make library', the library will be compiled in place but
the demonstration programs will not.
Typing 'make demos' will compile the demonstration programs only.
Since the demos require it, however, the library will also be compiled
if it was not done before.
Finally, typing 'make install' will compile the library if it was
not done before, and copy that, the include files and the manual pages
to their appropriate places.
NOTE: When the library libsipp.a is created, the make process attempts to
run the program "ranlib" on it. Some systems don't use this program and
make will then complain but ignore the generated error. This is normal
and you can safely ignore it too.
II. Installing the Info manual
1. Create the Info files 'sipp', 'sipp-1', 'sipp-2' and so on from
'sipp.texinfo'. If you have the 'makeinfo' program, you can do
this by running it on 'sipp.texinfo'. Otherwise you can do it with
emacs by running these steps:
1.1 Read 'sipp.texinfo' into an emacs buffer.
1.2 Type `'M-X texinfo-format-buffer''
1.3 Save the newly created Info file 'sipp', 'sipp-1', 'sipp-2' and
so on.
2. Move the Info files 'sipp', 'sipp-1' and so on to the standard Info
directory. Usually this is '/usr/gnu/emacs/info' or something
similar. (See step 3 above).
3. Edit the file 'dir' in the info directory and enter one line to
contain a pointer to the Info file 'sipp'. The line can, for
instance, look like this:
* SIPP: (sipp). 3D rendering library.
III. Creating typeset manual
You can also make a typeset manual from the file 'sipp.texinfo'. To
do this, you must have the TeX text formatting program installed. However,
we have put a ready made PostScript version of the manual in the doc
directory too, for those of you who haven't got TeX, but have access to a
PostScript printer.
The default setup is to format the manual for one-sided printing. The
supplied PostScript file is also formatted for one-sided printing. If you
want formatting for two sided printing you should change the line:
@setchapternewpage on
in the beginning of the file sipp.texinfo into:
@setchapternewpage odd
and then proceed as follows.
To typeset the manual, just follow these steps:
1. If the file 'texinfo.tex' is not properly installed in the path
given by the environment variable 'TEXINPUTS', get it and put
it in the same directory as 'sipp.texinfo' (the 'doc' directory of
SIPP). This file contains macros used by the TeX text formatting
program to produce typeset output from a texinfo file. You can get
this from, e.g., 'prep.ai.mit.edu' in the US or from 'isy.liu.se'
in Europe.
2. Run TeX by typing `'tex sipp.texinfo''. You might need to do this
twice to get all cross references correct. If you have the
'texindex' program, you can create a sorted index by typing
texindex sipp.cp sipp.fn
between the two TeX passes. If you don't do this, you still get a
typeset manual, but you will not get a correct index.
3. Convert the resulting device independent file 'sipp.dvi' to a form
which your printer can output and print it. If you have a
postscript printer there is a program, 'dvips', which can do this.
|