blob: 2f76b24ddfadcacc031ac48668c8bc05ef15bc26 [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
Harald Welte2bd0ada2002-08-02 12:54:19 +00004 in the official kernel. Those are now (as of iptables-1.2.7) kept
5 in a seperate package, called patch-o-matic. It is available from
6 ftp://ftp.netfilter.org/pub/patch-o-matic/
Harald Weltec5a2ce42001-09-02 14:55:36 +00007
Rusty Russell50a8efe2001-02-03 10:50:04 +000081) Next, make the package.
Rusty Russell197ca912002-05-13 01:52:18 +00009 % make KERNEL_DIR=<<where-you-built-your-kernel>>
Rusty Russell7fae6fa2000-05-31 06:32:02 +000010
Rusty Russell8c245b52000-07-14 08:01:22 +0000112) Finally, you need to to install the shared libraries, and the binary:
Rusty Russell197ca912002-05-13 01:52:18 +000012 # make install KERNEL_DIR=<<where-you-built-your-kernel>>
Rusty Russell7fae6fa2000-05-31 06:32:02 +000013
James Morris460c7472001-10-16 14:41:02 +000014If you are a developer, you can install the headers, development libraries
15and associated development man pages, with:
Rusty Russell429eafb2001-01-07 06:49:44 +000016 # make install-devel
Rusty Russell8c245b52000-07-14 08:01:22 +000017
Rusty Russell429eafb2001-01-07 06:49:44 +000018That's it!
19================================================================
Rusty Russell429eafb2001-01-07 06:49:44 +000020PROBLEMS YOU MAY ENCOUNTER:
21
Harald Weltec206dcb2001-04-30 04:24:30 +0000221) This package requires a 2.4.4 kernel, or above.
Rusty Russell8c245b52000-07-14 08:01:22 +000023
242) If you get the kernel directory wrong, you may see a message like:
25 Please try `make KERNEL_DIR=path-to-correct-kernel'
26
273) If you want to specify alternate directories for installation
28(instead of /usr/local/ bin lib man), do this:
Richard Gooch8e3b8922000-04-22 00:57:38 +000029
30 % make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man
Rusty Russell8c245b52000-07-14 08:01:22 +000031 # make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man install
Richard Gooch8e3b8922000-04-22 00:57:38 +000032
Harald Welte3efb6ea2001-08-06 18:50:21 +0000334) If you want to build a statically linked version of the iptables binary,
34 without the need for loading the plugins at runtime (e.g. for an embedded
35 device or router-on-a-disk), please use
36
37 % make NO_SHARED_LIBS=1
38
Richard Gooch8e3b8922000-04-22 00:57:38 +000039NOTE: make sure you build with at least the correct LIBDIR=
40specification, otherwise iptables(8) won't know where to find the
41dynamic objects.