blob: 4ed9a67f2b8c8374ad6a294d89d9c69b0ae0a02c [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 ?
gdte0170882005-08-10 15:07:02 +000025 FreeBSD 4.x
26 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]
30 NetBSD 1.6.x
31 NetBSD 2.x
Greg Troxel301e4fb2006-09-20 14:46:07 +000032 NetBSD 3.x
33 NetBSD 4.x
34 NetBSD-current
gdte0170882005-08-10 15:07:02 +000035 OpenBSD ? [info needed on what should work]
36 Solaris 9
37 Solaris 10
38
gdt3764c0c2004-11-15 17:26:47 +000039
paul9104f562004-11-12 10:30:21 +000040For further Quagga specific information on 'configure' and build-time
gdte0170882005-08-10 15:07:02 +000041configuration of the software, please read the Quagga info
42documentation, (doc/quagga.info). To read the info page included with
43the Quagga sources without first installing Quagga:
paul9104f562004-11-12 10:30:21 +000044
gdte0170882005-08-10 15:07:02 +000045 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")'
paul9104f562004-11-12 10:30:21 +000050
gdte0170882005-08-10 15:07:02 +000051The Quagga website (http://www.quagga.net) currently has the info
52files available in various formats.
paul9104f562004-11-12 10:30:21 +000053
54--------------------------------------------------------------------------
55Building Quagga from CVS checkouts:
56
57In order to build from CVS, you will need recent versions of several GNU
paul7cad4002005-06-28 00:19:48 +000058tools, particularly autoconf, automake, libtool, GNU awk and texinfo. Note
59that the CVS snapshots on the Quagga website should not require these tools;
60everything is already setup ready to run 'configure'. If you have trouble
61building from CVS checkout it is recommended that you try a CVS snapshot
62instead.
paul9104f562004-11-12 10:30:21 +000063
gdt3764c0c2004-11-15 17:26:47 +000064If you are building from plain CVS checkouts, the versions which
65should work at least with:
paul9104f562004-11-12 10:30:21 +000066
67 automake: 1.8.5
68 autoconf: 2.59
69 libtool: 1.5.6
gdt3764c0c2004-11-15 17:26:47 +000070 texinfo: 4.7
gdte0170882005-08-10 15:07:02 +000071 GNU AWK: 3.1 [XXX is GNU version really needed? BSD?]
72 texinfo 4.7
paul9104f562004-11-12 10:30:21 +000073
gdte0170882005-08-10 15:07:02 +000074Becuase some systems provide texinfo 4.6 (4.7 is new), quagga.info is
75checked in so that texinfo will generally not be invoked. When
76texinfo 4.7 is widespread, quagga.info will be removed from CVS and
77texinfo will become required again. (4.7 has figure support, needed
78for the route server docs, which is why 4.6 doesn't work.)
gdt38c2cfe2004-11-22 20:14:33 +000079
paul3849db22005-04-02 17:13:33 +000080In order to create PostScript or PDF versions of the Texinfo documentation,
81you will need the convert utility, from the ImageMagick toolset installed,
82and epstopdf from the TeTeX suite.
83
gdt3764c0c2004-11-15 17:26:47 +000084To create the required autotools files (Makefile.in, configure, etc.),
85run either the 'update-autotools' script provided, or else the
ajscbf566e2004-11-15 19:43:16 +000086'autoreconf -i' command supplied with your autoconf package. After this
gdte0170882005-08-10 15:07:02 +000087you may run configure.
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
gdt8bed7802004-11-15 15:34:50 +000099NetBSD 1.6.2 and 2.0 provide texinfo 4.6.
gdte0170882005-08-10 15:07:02 +0000100NetBSD 2.99.15 provides texinfo 4.7 (so NetBSD 3 will as well).
gdt38c2cfe2004-11-22 20:14:33 +0000101NetBSD pkgsrc provides automake 1.9.1 autoconf 2.59 libtool 1.5.6
102NetBSD pgksrc provides texinfo 4.7 (devel/gtexinfo)
103
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--------------------------------------------------------------------------