and added files
[bcm963xx.git] / userapps / opensource / net-snmp / INSTALL
1 TABLE OF CONTENTS
2 =================
3
4   Table Of Contents
5   Quick Instructions
6 * Ucd-Snmp Specific Information
7   Long (but you should read these) Instructions
8   Installing the Perl/SNMP Module
9 * Compilers and Options
10   Compiling For Multiple Architectures
11   Installation Names
12   Optional Features
13   Sharing Defaults
14   Operation Controls
15
16   * = required reading
17
18 QUICK INSTRUCTIONS
19 ==================
20
21   1) Run ./configure
22      (type "./configure --help" for a quick usage summary.)
23      (--prefix=PATH will change the default /usr/local installation path.)
24      (see "Compilers and Options" on changing the complier to use)
25
26   2) Optionally edit include/net-snmp/net-snmp-config.h
27      (due to prompting done by the configure script, this is very rarely
28       necessary.)
29
30   3) make
31
32   4) Run the next two commands as root:
33   5) umask 022   # <-- zero-two-two
34   6) make install
35
36 Note: By default, everything will be installed in /usr/local.
37       (see below for more instructions)
38
39 UCD-SNMP Specific Information
40 =============================
41
42 As of V3.3.1 the configuration files are now looked for in
43 $(prefix)/share/snmp, where ($prefix) is defined as the value passed
44 to the --prefix argument of the configure script, or /usr/local if
45 undefined.  In version 3.0.3 till 3.3, the files were kept in
46 $(prefix)/lib/snmp
47
48 Optional features to pass to configure for ucd-snmp can be obtained by
49 running configure --help.
50
51 LONG (but you should read these) INSTRUCTIONS
52 =============================================
53
54    The `configure' shell script attempts to guess correct values for
55 various system-dependent variables used during compilation.  It uses
56 those values to create a `Makefile' in each directory of the package.
57 It may also create one or more `.h' files containing system-dependent
58 definitions.  Finally, it creates a shell script `config.status' that
59 you can run in the future to recreate the current configuration, a file
60 `config.cache' that saves the results of its tests to speed up
61 reconfiguring, and a file `config.log' containing compiler output
62 (useful mainly for debugging `configure').
63
64    If you need to do unusual things to compile the package, please try
65 to figure out how `configure' could check whether to do them, and mail
66 diffs or instructions to the address given in the `README' so they can
67 be considered for the next release.  If at some point `config.cache'
68 contains results you don't want to keep, you may remove or edit it.
69
70    The file `configure.in' is used to create `configure' by a program
71 called `autoconf'.  You only need `configure.in' if you want to change
72 it or regenerate `configure' using a newer version of `autoconf'.
73
74 The simplest way to compile this package is:
75
76   1. `cd' to the directory containing the package's source code and type
77      `./configure' to configure the package for your system.  If you're
78      using `csh' on an old version of System V, you might need to type
79      `sh ./configure' instead to prevent `csh' from trying to execute
80      `configure' itself.
81
82      Running `configure' takes awhile.  While running, it prints some
83      messages telling which features it is checking for.
84
85   2. Edit config.h.  IMPORTANT information is in here.  Like the
86      location of the log file and the location of the configuration
87      files.  Again, you should really edit config.h.in instead and
88      then run config.status, which will generate config.h from config.h.in.
89
90   3. Type `make' to compile the package.
91
92   4. Type `make install' to install the programs and any data files and
93      documentation.
94
95   5. You can remove the program binaries and object files from the
96      source code directory by typing `make clean'.  To also remove the
97      files that `configure' created (so you can compile the package for
98      a different kind of computer), type `make distclean'.
99
100
101 Installing the Perl/SNMP Module
102 ===============================
103    The Perl/SNMP Module is now bundled with the ucd-snmp package and is
104 located in the ucd-snmp/perl/SNMP directory. This module is an interface
105 to the ucd-snmp SNMP client side management API. The Perl package
106 provides a high level abstract interface to these functions for rapid
107 application development. Following are the steps required to build and
108 install this perl module.
109
110    1.) Be sure to read the ucd-snmp/perl/SNMP/README
111
112    2.) Be sure that ucd-snmp has been sucessfully tested and installed -
113        the headers and libraries will be required to build, the
114        applications and mibs will be required to test the perl module
115
116    3.) cd to ucd-snmp/perl/SNMP and run
117             perl Makefile.PL
118             make
119             make test
120             make install (as root)
121
122
123
124 Compilers and Options
125 =====================
126
127    Some systems require unusual options for compilation or linking that
128 the `configure' script does not know about.  You can give `configure'
129 initial values for variables by setting them in the environment.  Using
130 a Bourne-compatible shell, you can do that on the command line like
131 this:
132      CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
133
134 Or on systems that have the `env' program, you can do it like this:
135      env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
136
137 Compiling For Multiple Architectures
138 ====================================
139
140    You can compile the package for more than one kind of computer at the
141 same time, by placing the object files for each architecture in their
142 own directory.  To do this, you must use a version of `make' that
143 supports the `VPATH' variable, such as GNU `make'.  `cd' to the
144 directory where you want the object files and executables to go and run
145 the `configure' script.  `configure' automatically checks for the
146 source code in the directory that `configure' is in and in `..'.
147
148    If you have to use a `make' that does not supports the `VPATH'
149 variable, there is a `maketarget' script that will generate a symlink'ed
150 shadow-directory for the object files. Do a `sh maketarget', then `cd' into
151 targets/`config.guess` and do the configuration and installation.
152
153 Installation Names
154 ==================
155
156    By default, `make install' will install the package's files in
157 `/usr/local/bin', `/usr/local/man', etc.  You can specify an
158 installation prefix other than `/usr/local' by giving `configure' the
159 option `--prefix=PATH'.
160
161    You can specify separate installation prefixes for
162 architecture-specific files and architecture-independent files.  If you
163 give `configure' the option `--exec-prefix=PATH', the package will use
164 PATH as the prefix for installing programs and libraries.
165 Documentation and other data files will still use the regular prefix.
166
167    If the package supports it, you can cause programs to be installed
168 with an extra prefix or suffix on their names by giving `configure' the
169 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
170
171 Optional Features
172 =================
173
174    Some packages pay attention to `--enable-FEATURE' options to
175 `configure', where FEATURE indicates an optional part of the package.
176 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
177 is something like `gnu-as' or `x' (for the X Window System).  The
178 `README' should mention any `--enable-' and `--with-' options that the
179 package recognizes.
180
181    For packages that use the X Window System, `configure' can usually
182 find the X include and library files automatically, but if it doesn't,
183 you can use the `configure' options `--x-includes=DIR' and
184 `--x-libraries=DIR' to specify their locations.
185
186 Specifying the System Type
187 ==========================
188
189    There may be some features `configure' can not figure out
190 automatically, but needs to determine by the type of host the package
191 will run on.  Usually `configure' can figure that out, but if it prints
192 a message saying it can not guess the host type, give it the
193 `--host=TYPE' option.  TYPE can either be a short name for the system
194 type, such as `sun4', or a canonical name with three fields:
195      CPU-COMPANY-SYSTEM
196
197 See the file `config.sub' for the possible values of each field.  If
198 `config.sub' isn't included in this package, then this package doesn't
199 need to know the host type.
200
201    If you are building compiler tools for cross-compiling, you can also
202 use the `--target=TYPE' option to select the type of system they will
203 produce code for and the `--build=TYPE' option to select the type of
204 system on which you are compiling the package.
205
206 Sharing Defaults
207 ================
208
209    If you want to set default values for `configure' scripts to share,
210 you can create a site shell script called `config.site' that gives
211 default values for variables like `CC', `cache_file', and `prefix'.
212 `configure' looks for `PREFIX/share/config.site' if it exists, then
213 `PREFIX/etc/config.site' if it exists.  Or, you can set the
214 `CONFIG_SITE' environment variable to the location of the site script.
215 A warning: not all `configure' scripts look for a site script.
216
217 Operation Controls
218 ==================
219
220    `configure' recognizes the following options to control how it
221 operates.
222
223 `--cache-file=FILE'
224      Use and save the results of the tests in FILE instead of
225      `./config.cache'.  Set FILE to `/dev/null' to disable caching, for
226      debugging `configure'.
227
228 `--help'
229      Print a summary of the options to `configure', and exit.
230
231 `--quiet'
232 `--silent'
233 `-q'
234      Do not print messages saying which checks are being made.
235
236 `--srcdir=DIR'
237      Look for the package's source code in directory DIR.  Usually
238      `configure' can determine that directory automatically.
239
240 `--version'
241      Print the version of Autoconf used to generate the `configure'
242      script, and exit.
243
244 `configure' also accepts some other, not widely useful, options.
245
246