/[svn]/ircd-hybrid/INSTALL
ViewVC logotype

Contents of /ircd-hybrid/INSTALL

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1048 - (show annotations)
Wed Jan 27 22:49:25 2010 UTC (9 years, 10 months ago) by michael
File size: 8392 byte(s)
- Update copyright years

1 Hybrid INSTALL Document
2
3 $Id$
4
5 Copyright (c) 1997-2010 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 NEWS file to find out about the exciting new features in
37 this version. Other good reads are BUGS, etc/example.conf, and
38 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 config.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 Incidentally, the order of listing above is the order of auto-
75 detection in configure. So if you do have kqueue but wish to
76 enable select(2) instead (bad idea), you must use --enable-select.
77
78 * --enable-openssl - Enable the openssl dependent crypto functions.
79 This will allow CHALLENGE to work and encrypted links. On systems
80 where the configure script can automatically detect OpenSSL, this
81 option is not necessary. If configure cannot find OpenSSL, you
82 must specify a path with this option
83 (--enable-openssl=/path/to/openssl)
84
85
86 These are optional or have default values that may be overridden:
87
88 * --enable-assert - Enable use of numerous debugging checks. This
89 should not be used on any production servers for maximum speed
90 so as to prevent cores from things that shouldn't normally happen.
91
92 * --enable-halfops - Enable halfops (%, mode +h) usage. Halfops
93 are similar to plain ops, but can't kick/deop plain ops. Halfops
94 may or may not kick/deop other halfops depending on if (+p) is
95 set. Halfops may not set (+/-p).
96
97 * --enable-small-net - Tunes the server for smaller networks by
98 reducing the startup memory footprint. This should really only be
99 used for *small* networks, as this tends to be a performance hit
100 on larger networks.
101
102 * --enable-syslog=kill/squit/connect/users/oper, separated by
103 spaces, in quotes - Enables syslog logging, with events you specify
104 (none is okay too, and logs the most essential messages only.)
105
106 * --enable-syslog-facility=FACILITY - Check with your sysadmin to see
107 what this should be; by default it is LOG_LOCAL4. If you get it wrong
108 initially, no problem; just edit the value in include/setup.h.
109
110 * --with-nicklen,
111 --with-topiclen - Respectively, sets the maximum NICK length and
112 maximum TOPIC length. Note that this must be consistent across your
113 entire network. Defaults are 9 and 120, respectively.
114
115 * --disable-zlib - Build the ircd without ziplinks support.
116
117
118 3. Run 'make'; this should build the ircd.
119
120 4. Run 'make install'; this will install the server, modules(1), and tools
121 in the path with the prefix specified when configure was ran.
122
123 (1) Unless the server was compiled without module support.
124
125 5. If you wish to install the contrib modules, run 'make install' in the
126 contrib/ folder to compile and install the modules and help pages.
127
128 6. If you wish to enable the user log, oper log, and failed oper log,
129 kill log, kline log and the gline log issue these commands at the
130 shell prompt (in the prefix directory).
131
132 $ touch logs/userlog
133 $ touch logs/operlog
134 $ touch logs/foperlog
135 $ touch logs/kill
136 $ touch logs/kline
137 $ touch logs/gline
138
139 Note: If you use different names in ircd.conf, you must 'touch'
140 their specific names.
141
142 7. If you are upgrading from Hybrid 5 or Hybrid 6, the config files
143 have changed drastically...
144
145 By default, the kline file is named kline.conf, the dline file is
146 named dline.conf, the xline file is called xline.conf, and the gline
147 file is called gline.conf.
148
149 The nick resv file is named nresv.conf, channel resv file is named
150 cresv.conf.
151
152 The oper motd file is named opers.motd.
153
154 ----------------------------------------------------------------------
155
156 HOW TO GET HELP
157
158 - Send Check or Money Order to... just kidding! You're on your own for
159 support. Try asking other ircd-hybrid admins on EFnet if you can't
160 fix it yourself. If you do fix anything, however, please send context
161 or unified diffs to bugs@ircd-hybrid.org so the fixes can be
162 incorporated into the next release of ircd-hybrid. If hybrid crashes
163 on you, PLEASE contact bugs@ircd-hybrid.org ASAP with a backtrace of
164 the core. The Hybrid team can't fix bugs if no one tells us about them!
165
166 - https://lists.ircd-hybrid.org/mailman/listinfo/hybrid
167 Here you can subscribe to a mailing list for general discussion of Hybrid.
168
169 ----------------------------------------------------------------------
170
171 NOTES
172
173 The best way to get a backtrace of the core is to follow this sequence of
174 instructions:
175
176 1. Change to the directory containing the core file
177
178 2. Run gdb on the binary and the core file. With an unmodified ircd-hybrid
179 installation, an example command line is below (in the /usr/local/ircd
180 directory)
181
182 $ gdb bin/ircd ircd.core
183
184
185 3. At the "(gdb)" prompt, enter the command "bt full"
186
187 4. Save the output of the backtrace command and send it to
188 bugs@ircd-hybrid.org.
189
190 5. Be sure to save the ircd binary, the modules, and the core file in a
191 safe place in case the developers need to look deeper than a backtrace
192 provides.

Properties

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

svnadmin@ircd-hybrid.org
ViewVC Help
Powered by ViewVC 1.1.26