ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid-7.2/INSTALL
Revision: 685
Committed: Fri Jun 16 12:22:31 2006 UTC (17 years, 9 months ago) by michael
File size: 9414 byte(s)
Log Message:
- Updated copyright years in version.c and INSTALL
- Bumped version to 7.2.2 in configure.ac and doxygen.conf

File Contents

# Content
1 Hybrid INSTALL Document
2
3 $Id$
4
5 Copyright (c) 1997-2006 IRCD-Hybrid Development Team
6
7 ----------------------------------------------------------------------
8
9 +------------------------------------------------------------------------+
10 | Note for those who don't bother reading docs: |
11 | |
12 | Reading INSTALL is now a must, as the old DPATH is now specified when |
13 | configure is run. |
14 | |
15 | - You now need to ./configure --prefix="/path/to/install/it" as a |
16 | minimum. Try ./configure --help or read this file for more info on |
17 | the possible options you can pass to configure. |
18 | |
19 | - Important: The old config format WILL NOT WORK. Please see point 7! |
20 +------------------------------------------------------------------------+
21
22 ***** EFNET NOTE *****
23 You should run ./configure with the option '--enable-efnet' to tweak
24 some options to be EFNet based. You must also use the example.efnet.conf
25 instead of example.conf.
26 **********************
27
28 ----------------------------------------------------------------------
29
30 HOW TO BUILD
31
32 As of hybrid-4, the distribution uses GNU autoconf instead of the old
33 Config script. You must run ./configure before you can (sanely) build
34 ircd-hybrid.
35
36 1. Read the RELNOTES file to find out about the exciting new features in
37 this version. Other good reads are doc/whats-new.txt, BUGS,
38 etc/example.conf, and README.FIRST.
39
40 An example.conf for EFnet is in etc/ with the values "approved" as of
41 October 12th, 2003 called example.efnet.conf.
42
43 2. Run the configure script. It will create include/setup.h and the
44 Makefiles to match your system. In hybrid-7, the paths are now handled
45 with the --prefix option to configure.
46 /usr/local/ircd is the default if no prefix is specified.
47
48 ./configure --prefix=/usr/local/ircd
49
50 The script will determine whichever of the following is best for
51 your system, but you may (unsupported) force their usage with
52 undefined results:
53
54 * --enable-kqueue - Use the superior kqueue(2) system call as
55 opposed to the default poll(2). This is currently only available
56 on FreeBSD 4.1 or higher.
57
58 * --enable-devpoll - Enable the superior /dev/poll support on
59 Solaris. Linux /dev/poll is broken and will not work with this
60 option.
61
62 * --enable-epoll - Enables epoll(4) Signal I/O system. This is
63 currently only available on 2.5.44 Linux kernel versions or
64 later.
65
66 * --enable-rtsigio - Enable the superior Linux RealTime Signal I/O
67 system. This is currently only available on 2.4 Linux kernel
68 versions or later.
69
70 * --enable-poll - Use POSIX poll(2).
71
72 * --enable-select - Use POSIX select(2).
73
74 * --enable-clobber - Don't preserve the old binaries on make install
75
76 Incidentally, the order of listing above is the order of auto-
77 detection in configure. So if you do have kqueue but wish to
78 enable select(2) instead (bad idea), you must use --enable-select.
79
80 * --enable-openssl - Enable the openssl dependent crypto functions.
81 This will allow CHALLENGE to work and encrypted links. On systems
82 where the configure script can automatically detect OpenSSL, this
83 option is not necessary. If configure cannot find OpenSSL, you
84 must specify a path with this option
85 (--enable-openssl=/path/to/openssl)
86
87 These are optional or have default values that may be overridden:
88
89 * --disable-shared-modules - Disable module support. This option is
90 more secure, but reduces a lot of the flexibility in hybrid-7.
91 This may need to be used on some systems without a working
92 dlopen/dlsym.
93
94 * --enable-assert - Enable use of numerous debugging checks. This
95 should not be used on any production servers for maximum speed
96 so as to prevent cores from things that shouldn't normally happen.
97
98 * --enable-efence - Enable ElectricFence which is a memory debugger.
99
100 * --enable-profile - Enable profiling support in ircd-hybrid.
101
102 * --disable-block-alloc - Disable block allocations (only works with
103 ElectricFence).
104
105 * --enable-halfops - Enable halfops (%, mode +h) usage. Halfops
106 are similar to plain ops, but can't kick/deop plain ops. Halfops
107 may or may not kick/deop other halfops depending on if (+p) is
108 set. Halfops may not set (+/-p).
109
110 * --enable-small-net - Tunes the server for smaller networks by
111 reducing the startup memory footprint. This should really only be
112 used for *small* networks, as this tends to be a performance hit
113 on larger networks.
114
115 * --enable-syslog=kill/squit/connect/users/oper, separated by
116 spaces, in quotes - Enables syslog logging, with events you specify
117 (none is okay too, and logs the most essential messages only.)
118
119 * --enable-syslog-facility=FACILITY - Check with your sysadmin to see
120 what this should be; by default it is LOG_LOCAL4. If you get it wrong
121 initially, no problem; just edit the value in include/setup.h.
122
123 * --with-nicklen,
124 --with-topiclen - Respectively, sets the maximum NICK length and
125 maximum TOPIC length. Note that this must be consistent across your
126 entire network. Defaults are 9 and 120, respectively.
127
128 * --disable-zlib - Build the ircd without ziplinks support.
129
130 * --disable-gline-voting - This is good for small networks or where
131 G-Line voting is not necessary. Please understand that by disabling
132 this, it will allow any operator with G-Line permissions to G-Line
133 someone without requiring the approval of 2 other operators. However,
134 it is useful if you use proxy scanners or services that do G-Lines.
135
136 3. Run 'make'; this should build the ircd.
137
138 4. Run 'make install'; this will install the server, modules(1), and tools
139 in the path with the prefix specified when configure was ran.
140
141 (1) Unless the server was compiled without module support.
142
143 5. If you wish to install the contrib modules, run 'make install' in the
144 contrib/ folder to compile and install the modules and help pages.
145
146 6. If you wish to enable the user log, oper log, and failed oper log,
147 kill log, kline log and the gline log issue these commands at the
148 shell prompt (in the prefix directory).
149
150 $ touch logs/userlog
151 $ touch logs/operlog
152 $ touch logs/foperlog
153 $ touch logs/kill
154 $ touch logs/kline
155 $ touch logs/gline
156
157 Note: If you use different names in ircd.conf, you must 'touch'
158 their specific names.
159
160 7. If you are upgrading from Hybrid 5 or Hybrid 6, the config files
161 have changed drastically...
162
163 By default, the kline file is named kline.conf, the dline file is
164 named dline.conf, the xline file is called xline.conf, and the gline
165 file is called gline.conf.
166
167 The nick resv file is named nresv.conf, channel resv file is named
168 cresv.conf.
169
170 The oper motd file is named opers.motd.
171
172 ----------------------------------------------------------------------
173
174 HOW TO GET HELP
175
176 - Send Check or Money Order to... just kidding! You're on your own for
177 support. Try asking other ircd-hybrid admins on EFnet if you can't
178 fix it yourself. If you do fix anything, however, please send context
179 or unified diffs to bugs@ircd-hybrid.org so the fixes can be
180 incorporated into the next release of ircd-hybrid. If hybrid crashes
181 on you, PLEASE contact bugs@ircd-hybrid.org ASAP with a backtrace of
182 the core. The Hybrid team can't fix bugs if no one tells us about them!
183
184 - http://forum.ircd-hybrid.org/
185 We decided to create a phpBB-like forum about ircd-hybrid, where you
186 can get help from coders and admins, post your suggestions, modules etc.
187
188 - https://lists.ircd-hybrid.org/mailman/listinfo/hybrid
189 Here you can subscribe to a mailing list for general discussion of Hybrid.
190
191 ----------------------------------------------------------------------
192
193 NOTES
194
195 The best way to get a backtrace of the core is to follow this sequence of
196 instructions:
197
198 1. Change to the directory containing the core file
199
200 2. Run gdb on the binary and the core file. With an unmodified Hybrid-7.2
201 installation, an example command line is below (in the /usr/local/ircd
202 directory)
203
204 $ gdb bin/ircd ircd.core
205
206
207 3. At the "(gdb)" prompt, enter the command "bt full"
208
209 4. Save the output of the backtrace command and send it to
210 bugs@ircd-hybrid.org.
211
212 5. Be sure to save the ircd binary, the modules, and the core file in a
213 safe place in case the developers need to look deeper than a backtrace
214 provides.

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision