blob: f627c9221c9fbc35b167769b48e88edb759a12bf [file] [log] [blame]
Greg Troxel301e4fb2006-09-20 14:46:07 +00001# $Id$
gdt8bed7802004-11-15 15:34:50 +00002
paul9104f562004-11-12 10:30:21 +00003--------------------------------------------------------------------------
gdt3764c0c2004-11-15 17:26:47 +00004Building and Installing Quagga from releases or snapshots:
paul9104f562004-11-12 10:30:21 +00005
6The 'INSTALL' file contains generic instructions on how to use 'configure'
7scripts.
8
Greg Troxel301e4fb2006-09-20 14:46:07 +00009Quagga requires a C compiler (and associated header files and
10libraries) supporting the C99 standard.
gdte0170882005-08-10 15:07:02 +000011
12Quagga requires a reasonable make. It is considered a bug if quagga
13does not compile with the system make on recent FreeBSD, NetBSD or
14OpenBSD, and a very serious bug if it does not compile with GNU make.
15
16Quagga expects a POSIX.2 compliant system, more or less. Clean
17workarounds for POSIX non-compliance are welcome.
18
19It is considered a bug if Quagga fails to build and run on any of the
20following systems (where .x indicates the most recent release), or
21such systems "-current" versions. (Note that considering it a bug is
22not a guarantee of support, merely "we agree that it is broken".)
23
Greg Troxel301e4fb2006-09-20 14:46:07 +000024 Dragonfly ?
Greg Troxel9f0a19f2007-02-06 19:56:31 +000025 FreeBSD 4.x [In 2007, this is getting tenous.]
gdte0170882005-08-10 15:07:02 +000026 FreeBSD 5.x
Greg Troxel301e4fb2006-09-20 14:46:07 +000027 FreeBSD 6.x
28 FreeBSD-current
gdte0170882005-08-10 15:07:02 +000029 Linux [kernel/distribution information needed]
Greg Troxel9f0a19f2007-02-06 19:56:31 +000030 NetBSD 2.x [Note texinfo 4.6 in base system]
Greg Troxel301e4fb2006-09-20 14:46:07 +000031 NetBSD 3.x
32 NetBSD 4.x
33 NetBSD-current
gdte0170882005-08-10 15:07:02 +000034 OpenBSD ? [info needed on what should work]
35 Solaris 9
36 Solaris 10
37
gdt3764c0c2004-11-15 17:26:47 +000038
paul9104f562004-11-12 10:30:21 +000039For further Quagga specific information on 'configure' and build-time
gdte0170882005-08-10 15:07:02 +000040configuration of the software, please read the Quagga info
41documentation, (doc/quagga.info). To read the info page included with
42the Quagga sources without first installing Quagga:
paul9104f562004-11-12 10:30:21 +000043
gdte0170882005-08-10 15:07:02 +000044 cd doc
45 # one of the following, depending on your info viewer preferences
46 info quagga.info
47 pinfo -r quagga.info
48 emacs -eval '(info "quagga.info")'
paul9104f562004-11-12 10:30:21 +000049
gdte0170882005-08-10 15:07:02 +000050The Quagga website (http://www.quagga.net) currently has the info
51files available in various formats.
paul9104f562004-11-12 10:30:21 +000052
53--------------------------------------------------------------------------
54Building Quagga from CVS checkouts:
55
56In order to build from CVS, you will need recent versions of several GNU
paul7cad4002005-06-28 00:19:48 +000057tools, particularly autoconf, automake, libtool, GNU awk and texinfo. Note
58that the CVS snapshots on the Quagga website should not require these tools;
59everything is already setup ready to run 'configure'. If you have trouble
60building from CVS checkout it is recommended that you try a CVS snapshot
61instead.
paul9104f562004-11-12 10:30:21 +000062
Greg Troxel9f0a19f2007-02-06 19:56:31 +000063We declare that the following versions should work for building from
64CVS checkouts. Earlier versions may work, but failure to do so is not
65a bug. Required versions can be moved earlier if no problems, or
66later after a judgement that a system without a higher version is
67deficient is made.
paul9104f562004-11-12 10:30:21 +000068
Greg Troxel9f0a19f2007-02-06 19:56:31 +000069 automake: 1.9.6 (released 2005-07-10)
70 autoconf: 2.59 (2.60 on 2006-06-26 is too recent to require)
71 libtool: 1.5.22 (released 2005-12-18)
72 texinfo: 4.7 (released 2004-04-10; 4.8 is not yet common)
73 GNU AWK: 3.1.5 (released 2005-08-12)
paul9104f562004-11-12 10:30:21 +000074
gdte0170882005-08-10 15:07:02 +000075Becuase some systems provide texinfo 4.6 (4.7 is new), quagga.info is
76checked in so that texinfo will generally not be invoked. When
77texinfo 4.7 is widespread, quagga.info will be removed from CVS and
78texinfo will become required again. (4.7 has figure support, needed
79for the route server docs, which is why 4.6 doesn't work.)
gdt38c2cfe2004-11-22 20:14:33 +000080
paul3849db22005-04-02 17:13:33 +000081In order to create PostScript or PDF versions of the Texinfo documentation,
82you will need the convert utility, from the ImageMagick toolset installed,
83and epstopdf from the TeTeX suite.
84
gdt3764c0c2004-11-15 17:26:47 +000085To create the required autotools files (Makefile.in, configure, etc.),
Greg Troxel9f0a19f2007-02-06 19:56:31 +000086run "./bootstrap.sh". After this you may run configure as for a
87snapshot or release.
paul9104f562004-11-12 10:30:21 +000088
89Please refer to "Building and Installing Quagga" above for further
90instructions.
gdt8bed7802004-11-15 15:34:50 +000091
92--------------------------------------------------------------------------
93Notes on required versions:
94
95The general goal is to use a modern baseline of tools, while not
96imposing pain on those tracking stable distributions. The notes below
97explain what versions are present in various environments.
98
Greg Troxel9f0a19f2007-02-06 19:56:31 +000099NetBSD 1.6 and 2 provide texinfo 4.6. This is now considered old.
100NetBSD 3 and 4 provide texinfo 4.7.
101
102Fedora Core ? provides autoconf 2.59.
gdt38c2cfe2004-11-22 20:14:33 +0000103
gdt9c3f5e62004-11-23 12:21:16 +0000104OpenBSD 3.6 provides texinfo 4.2.
105OpenBSD [3.6] ports provides automake 1.4-p6 autoconf 2.5.9 libtool 1.5.8
gdt38c2cfe2004-11-22 20:14:33 +0000106
paul9104f562004-11-12 10:30:21 +0000107--------------------------------------------------------------------------