diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2008-01-20 13:14:00 +0000 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2008-01-20 13:14:00 +0000 |
commit | f82070f9871d281c2802c1624dcf222886b5fb50 (patch) | |
tree | c0e633b0867a4caab39d55b74f8521ecac724520 /INSTALL | |
parent | 8e707d7c64c53c92a36b6c609b129aba8e51fab7 (diff) |
Converts the iptables build infrastructure to autotools.
- Can build both static and dynamic at the same time
- iptables-static will be a multi-binary, semi-static
(link against libc but w/o dynamic plugins)
- Always build IPv6 modules
- consider INSTALL
Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de>
Diffstat (limited to 'INSTALL')
-rw-r--r-- | INSTALL | 47 |
1 files changed, 26 insertions, 21 deletions
@@ -5,15 +5,21 @@ FOLLOW THESE STEPS: in a seperate package, called patch-o-matic. It is available from ftp://ftp.netfilter.org/pub/patch-o-matic/ -1) Next, make the package. - % make KERNEL_DIR=<<where-you-built-your-kernel>> +1) Next, make the package. If you use a standard distribution kernel, + just run ./configure. -2) Finally, you need to to install the shared libraries, and the binary: - # make install KERNEL_DIR=<<where-you-built-your-kernel>> + If you want to build against an own kernel tree: -If you are a developer, you can install the headers, development libraries -and associated development man pages, with: - # make install-devel + $ ./configure --with-kernel=/home/jengelh/mykernel + + or whereever you put it. If you are using a dedicated kernel build + directory, you use: + + $ ./configure --with-kbuild=<<where-built>> --with-ksource=<<source>> + +2) Finally, you need to install the binaries and shared libraries: + + # make install That's it! ================================================================ @@ -21,27 +27,26 @@ PROBLEMS YOU MAY ENCOUNTER: 1) This package requires a 2.4.4 kernel, or above. -2) If you get the kernel directory wrong, you may see a message like: - Please try `make KERNEL_DIR=path-to-correct-kernel' +2) If you get the kernel directory wrong, you may get compile failures. 3) If you want to specify alternate directories for installation (instead of /usr/local/ bin lib man), do this: - % make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man - # make BINDIR=/usr/bin LIBDIR=/usr/lib MANDIR=/usr/man install + $ ./configure --prefix=/usr + $ make + # make install + +4) The make process will automatically build a multipurpose binary under the + names iptables-multi and ip6tables-multi. -4) If you want to build a statically linked version of the iptables binary, +5) If you want to build a statically linked version of the iptables binary, without the need for loading the plugins at runtime (e.g. for an embedded device or router-on-a-disk), please use - % make NO_SHARED_LIBS=1 - -5) If you want to build a single BusyBox style multipurpose binary instead of - the individual iptables, iptables-save and iptables-restore binaries, then - please use + $ ./configure --enable-static - % make DO_MULTI=1 + which will build both a semi-static multi binary (iptables-mtss, uses + libc but not plugins) and a fully static multi binary (iptables-static). -NOTE: make sure you build with at least the correct LIBDIR= -specification, otherwise iptables(8) won't know where to find the -dynamic objects. +6) If you want to install libipq (old interface), add --enable-devel to + ./configure. |