Greg Troxel | 301e4fb | 2006-09-20 14:46:07 +0000 | [diff] [blame] | 1 | # $Id$ |
gdt | 8bed780 | 2004-11-15 15:34:50 +0000 | [diff] [blame] | 2 | |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 3 | -------------------------------------------------------------------------- |
gdt | 3764c0c | 2004-11-15 17:26:47 +0000 | [diff] [blame] | 4 | Building and Installing Quagga from releases or snapshots: |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 5 | |
| 6 | The 'INSTALL' file contains generic instructions on how to use 'configure' |
| 7 | scripts. |
| 8 | |
Greg Troxel | 301e4fb | 2006-09-20 14:46:07 +0000 | [diff] [blame] | 9 | Quagga requires a C compiler (and associated header files and |
| 10 | libraries) supporting the C99 standard. |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 11 | |
| 12 | Quagga requires a reasonable make. It is considered a bug if quagga |
| 13 | does not compile with the system make on recent FreeBSD, NetBSD or |
| 14 | OpenBSD, and a very serious bug if it does not compile with GNU make. |
| 15 | |
| 16 | Quagga expects a POSIX.2 compliant system, more or less. Clean |
| 17 | workarounds for POSIX non-compliance are welcome. |
| 18 | |
| 19 | It is considered a bug if Quagga fails to build and run on any of the |
| 20 | following systems (where .x indicates the most recent release), or |
| 21 | such systems "-current" versions. (Note that considering it a bug is |
| 22 | not a guarantee of support, merely "we agree that it is broken".) |
| 23 | |
Greg Troxel | 301e4fb | 2006-09-20 14:46:07 +0000 | [diff] [blame] | 24 | Dragonfly ? |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 25 | FreeBSD 4.x |
| 26 | FreeBSD 5.x |
Greg Troxel | 301e4fb | 2006-09-20 14:46:07 +0000 | [diff] [blame] | 27 | FreeBSD 6.x |
| 28 | FreeBSD-current |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 29 | Linux [kernel/distribution information needed] |
| 30 | NetBSD 1.6.x |
| 31 | NetBSD 2.x |
Greg Troxel | 301e4fb | 2006-09-20 14:46:07 +0000 | [diff] [blame] | 32 | NetBSD 3.x |
| 33 | NetBSD 4.x |
| 34 | NetBSD-current |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 35 | OpenBSD ? [info needed on what should work] |
| 36 | Solaris 9 |
| 37 | Solaris 10 |
| 38 | |
gdt | 3764c0c | 2004-11-15 17:26:47 +0000 | [diff] [blame] | 39 | |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 40 | For further Quagga specific information on 'configure' and build-time |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 41 | configuration of the software, please read the Quagga info |
| 42 | documentation, (doc/quagga.info). To read the info page included with |
| 43 | the Quagga sources without first installing Quagga: |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 44 | |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 45 | cd doc |
| 46 | # one of the following, depending on your info viewer preferences |
| 47 | info quagga.info |
| 48 | pinfo -r quagga.info |
| 49 | emacs -eval '(info "quagga.info")' |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 50 | |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 51 | The Quagga website (http://www.quagga.net) currently has the info |
| 52 | files available in various formats. |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 53 | |
| 54 | -------------------------------------------------------------------------- |
| 55 | Building Quagga from CVS checkouts: |
| 56 | |
| 57 | In order to build from CVS, you will need recent versions of several GNU |
paul | 7cad400 | 2005-06-28 00:19:48 +0000 | [diff] [blame] | 58 | tools, particularly autoconf, automake, libtool, GNU awk and texinfo. Note |
| 59 | that the CVS snapshots on the Quagga website should not require these tools; |
| 60 | everything is already setup ready to run 'configure'. If you have trouble |
| 61 | building from CVS checkout it is recommended that you try a CVS snapshot |
| 62 | instead. |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 63 | |
gdt | 3764c0c | 2004-11-15 17:26:47 +0000 | [diff] [blame] | 64 | If you are building from plain CVS checkouts, the versions which |
| 65 | should work at least with: |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 66 | |
| 67 | automake: 1.8.5 |
| 68 | autoconf: 2.59 |
| 69 | libtool: 1.5.6 |
gdt | 3764c0c | 2004-11-15 17:26:47 +0000 | [diff] [blame] | 70 | texinfo: 4.7 |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 71 | GNU AWK: 3.1 [XXX is GNU version really needed? BSD?] |
| 72 | texinfo 4.7 |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 73 | |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 74 | Becuase some systems provide texinfo 4.6 (4.7 is new), quagga.info is |
| 75 | checked in so that texinfo will generally not be invoked. When |
| 76 | texinfo 4.7 is widespread, quagga.info will be removed from CVS and |
| 77 | texinfo will become required again. (4.7 has figure support, needed |
| 78 | for the route server docs, which is why 4.6 doesn't work.) |
gdt | 38c2cfe | 2004-11-22 20:14:33 +0000 | [diff] [blame] | 79 | |
paul | 3849db2 | 2005-04-02 17:13:33 +0000 | [diff] [blame] | 80 | In order to create PostScript or PDF versions of the Texinfo documentation, |
| 81 | you will need the convert utility, from the ImageMagick toolset installed, |
| 82 | and epstopdf from the TeTeX suite. |
| 83 | |
gdt | 3764c0c | 2004-11-15 17:26:47 +0000 | [diff] [blame] | 84 | To create the required autotools files (Makefile.in, configure, etc.), |
| 85 | run either the 'update-autotools' script provided, or else the |
ajs | cbf566e | 2004-11-15 19:43:16 +0000 | [diff] [blame] | 86 | 'autoreconf -i' command supplied with your autoconf package. After this |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 87 | you may run configure. |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 88 | |
| 89 | Please refer to "Building and Installing Quagga" above for further |
| 90 | instructions. |
gdt | 8bed780 | 2004-11-15 15:34:50 +0000 | [diff] [blame] | 91 | |
| 92 | -------------------------------------------------------------------------- |
| 93 | Notes on required versions: |
| 94 | |
| 95 | The general goal is to use a modern baseline of tools, while not |
| 96 | imposing pain on those tracking stable distributions. The notes below |
| 97 | explain what versions are present in various environments. |
| 98 | |
gdt | 8bed780 | 2004-11-15 15:34:50 +0000 | [diff] [blame] | 99 | NetBSD 1.6.2 and 2.0 provide texinfo 4.6. |
gdt | e017088 | 2005-08-10 15:07:02 +0000 | [diff] [blame] | 100 | NetBSD 2.99.15 provides texinfo 4.7 (so NetBSD 3 will as well). |
gdt | 38c2cfe | 2004-11-22 20:14:33 +0000 | [diff] [blame] | 101 | NetBSD pkgsrc provides automake 1.9.1 autoconf 2.59 libtool 1.5.6 |
| 102 | NetBSD pgksrc provides texinfo 4.7 (devel/gtexinfo) |
| 103 | |
gdt | 9c3f5e6 | 2004-11-23 12:21:16 +0000 | [diff] [blame] | 104 | OpenBSD 3.6 provides texinfo 4.2. |
| 105 | OpenBSD [3.6] ports provides automake 1.4-p6 autoconf 2.5.9 libtool 1.5.8 |
gdt | 38c2cfe | 2004-11-22 20:14:33 +0000 | [diff] [blame] | 106 | |
paul | 9104f56 | 2004-11-12 10:30:21 +0000 | [diff] [blame] | 107 | -------------------------------------------------------------------------- |