blob: 59fe5efa90bad5d335f1196e7ceffdcb55fd1cb9 [file] [log] [blame]
Richard Gooch8e3b8922000-04-22 00:57:38 +00001FOLLOW THESE STEPS:
Richard Gooch8e3b8922000-04-22 00:57:38 +00002
Rusty Russell50a8efe2001-02-03 10:50:04 +000030) There may be some outstanding bugfixes or tweaks which are not yet
4 in the official kernel. To look through these, do:
5 % make pending-patches KERNEL_DIR=<<where-your-kernel-is>>
6
71) Next, make the package.
Rusty Russell8c245b52000-07-14 08:01:22 +00008 % make KERNEL_DIR=<<where-your-kernel-is>>
Rusty Russell7fae6fa2000-05-31 06:32:02 +00009
Rusty Russell8c245b52000-07-14 08:01:22 +0000102) Finally, you need to to install the shared libraries, and the binary:
Rusty Russell8c245b52000-07-14 08:01:22 +000011 # make install KERNEL_DIR=<<where-your-kernel-is>>
Rusty Russell7fae6fa2000-05-31 06:32:02 +000012
Rusty Russell429eafb2001-01-07 06:49:44 +000013If you are a developer, you can install the libipq headers, like:
14 # make install-devel
Rusty Russell8c245b52000-07-14 08:01:22 +000015
Rusty Russell429eafb2001-01-07 06:49:44 +000016That's it!
17================================================================
18FEELING BRAVE?
19
Harald Welte3efb6ea2001-08-06 18:50:21 +0000201) The netfilter core team is maintaining a set of extensions / new
21 features which are not yet committed to the mainstream kernel tree.
22
23If you want to try some extensions, you can do the following:
Rusty Russell429eafb2001-01-07 06:49:44 +000024 % make patch-o-matic KERNEL_DIR=<<where-your-kernel-is>>
25
Harald Welte3efb6ea2001-08-06 18:50:21 +000026This offers you a collection of maybe-broken maybe-cool third-party
Rusty Russell429eafb2001-01-07 06:49:44 +000027extensions. It will modify you kernel source (so back it up first!).
Harald Welte3efb6ea2001-08-06 18:50:21 +000028Most of them will require you to recompile / rebuild your kernel and
29modules.
Rusty Russell429eafb2001-01-07 06:49:44 +000030
31================================================================
32PROBLEMS YOU MAY ENCOUNTER:
33
Harald Weltec206dcb2001-04-30 04:24:30 +0000341) This package requires a 2.4.4 kernel, or above.
Rusty Russell8c245b52000-07-14 08:01:22 +000035
362) If you get the kernel directory wrong, you may see a message like:
37 Please try `make KERNEL_DIR=path-to-correct-kernel'
38
393) If you want to specify alternate directories for installation
40(instead of /usr/local/ bin lib man), do this:
Richard Gooch8e3b8922000-04-22 00:57:38 +000041
42 % make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man
Rusty Russell8c245b52000-07-14 08:01:22 +000043 # make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man install
Richard Gooch8e3b8922000-04-22 00:57:38 +000044
Harald Welte3efb6ea2001-08-06 18:50:21 +0000454) If you want to build a statically linked version of the iptables binary,
46 without the need for loading the plugins at runtime (e.g. for an embedded
47 device or router-on-a-disk), please use
48
49 % make NO_SHARED_LIBS=1
50
Richard Gooch8e3b8922000-04-22 00:57:38 +000051NOTE: make sure you build with at least the correct LIBDIR=
52specification, otherwise iptables(8) won't know where to find the
53dynamic objects.