Skip to content
This repository was archived by the owner on Jun 6, 2021. It is now read-only.

Commit 77e6bf1

Browse files
committed
Explain autoconf before ./configure
1 parent 4b033a7 commit 77e6bf1

File tree

1 file changed

+66
-24
lines changed

1 file changed

+66
-24
lines changed

INSTALL

Lines changed: 66 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,43 +14,75 @@
1414
Config script. The Makefile has also been updated to include CFLAGS
1515
defines for popular modern OSes.
1616

17-
1.
17+
1.
1818

1919
Read the NEWS file to find out about the exciting new features in
2020
this version. Other good reads are BUGS, doc/example.conf, and
2121
README.FIRST.
2222

23-
2.
23+
2.
24+
25+
In broad outline, this project uses autoconf, so the "normal"
26+
instalation procedure applies, which you can go ahead and use
27+
if you're already familiar with it:
28+
29+
$ autoconf
30+
$ ./configure
31+
$ make
32+
$ sudo make install
33+
34+
If not, you'll want to read the rest of this document.
35+
36+
3.
37+
38+
Firstly, check that there is a file "configure" in this directory, and
39+
if not, run
40+
41+
$ autoconf
42+
43+
If you don't have autoconf, install it from your distribution's package
44+
manager, or get the latest version from
45+
https://ftp.gnu.org/gnu/autoconf/ and follow the instructions in its own
46+
INSTALL file.
47+
48+
(Autoconf is also at https://github.com/autotools-mirror/autoconf but
49+
there it lacks its own pre-built configure script; it needs to be
50+
generated by autoconf, which induces a hole-in-my-bucket kind of
51+
problem.)
52+
53+
Don't forget to come back here and start again!
54+
55+
4.
2456

2557
Run the configure script. It will create include/setup.h and the
2658
Makefiles to match your system. In ircd-ratbox, the paths are now handled
2759
with the --prefix option to configure, not in config.h.
2860
/usr/local/ircd is the default if no prefix is specified.
2961

30-
./configure --prefix="/usr/local/ircd"
62+
$ ./configure --prefix="/usr/local/ircd"
3163

3264
Note: There are some special optional parameters to the configure
3365
script that some admins may wish to use.
3466

35-
*
67+
*
3668

3769
--enable-kqueue - Use the superior kqueue(2) system call as
3870
opposed to the default poll(2). This is currently only available
3971
on FreeBSD 4.1 or higher.
4072

41-
*
73+
*
4274

4375
--enable-devpoll - Enable the superior /dev/poll support on
4476
Solaris. Linux /dev/poll is broken and will not work with this
4577
option.
4678

47-
*
79+
*
4880

4981
--enable-epoll - Enable the superior Linux Edge-Triggered Polling
5082
system. This is currently only available on 2.5 Linux kernel
5183
versions or later.
5284

53-
*
85+
*
5486

5587
--enable-openssl - Enable the openssl dependent crypto functions.
5688
This will allow CHALLENGE to work and encrypted links. On systems
@@ -59,37 +91,47 @@
5991
must specify a path with this option
6092
(--enable-openssl=/path/to/openssl)
6193

62-
*
94+
*
6395

6496
--enable-ipv6 - Enable IPv6 support.
6597

66-
*
98+
*
6799

68100
--disable-assert - Disable some of the debugging code. This
69101
should be used on all production servers for maximum speed and to
70102
prevent cores from things that shouldn't normally happen.
71103

72-
*
104+
*
73105

74106
--enable-small-net - Tunes the server for smaller networks by
75107
reducing the startup memory footprint. This should really only be
76108
used for *small* networks, as this tends to be a performance hit
77109
on larger networks.
78110

79-
*
111+
*
80112

81113
--with-nicklen=LENGTH - Sets the maximum NICK length. Note that
82114
this must be consistent across your entire network.
83-
3.
115+
5.
84116

85117
make should build ircd.
86118

87-
4.
119+
$ make
120+
121+
6.
88122

89123
make install will install the server, modules, and tools in the
90-
the prefix specified when configure was run.
124+
the prefix specified when configure was run. Unless you've set the
125+
prefix to your own home directory, you'll need to be root for this step:
126+
127+
$ sudo make
91128

92-
5.
129+
or
130+
131+
$ su -
132+
# make
133+
134+
7.
93135

94136
If you wish to enable the user log, oper log, and failed oper log,
95137
issue these commands at the shell prompt (in the prefix directory)
@@ -99,9 +141,9 @@
99141
$ touch logs/foperlog
100142

101143
Note: If you use different names in ircd.conf, you must 'touch' the
102-
specific names.
144+
names you've specified.
103145

104-
6.
146+
8.
105147

106148
If you are upgrading from Hybrid 5 or Hybrid 6, the config file has
107149
changed drastically...
@@ -118,7 +160,7 @@
118160
EDIT IT! There are still things that need changing in the config,
119161
including the fact that classes MUST be above auth/connect blocks!
120162

121-
7.
163+
9.
122164

123165
If you are upgrading from Hybrid 5 or Hybrid 6, the kline file has
124166
also changed...
@@ -146,36 +188,36 @@
146188
DISCUSSION: There is a mailing list for discussion of ratbox issues,
147189
To subscribe, visit:
148190
http://lists.ratbox.org/cgi-bin/mailman/listinfo/ircd-ratbox
149-
191+
150192
----------------------------------------------------------------------
151193

152194
NOTES
153195

154196
The best way to get a backtrace of the core is to follow this sequence of
155197
instructions:
156198

157-
1.
199+
1.
158200

159201
Change to the directory containing the core file
160202

161-
2.
203+
2.
162204

163205
Run gdb on the binary and the core file. With an unmodified ircd-ratbox
164206
installation, an example command line is below (in the /usr/local/ircd
165207
directory)
166208

167209
$ gdb bin/ircd ircd.core
168210

169-
3.
211+
3.
170212

171213
At the "(gdb)" prompt, enter the command "bt"
172214

173-
4.
215+
4.
174216

175217
Save the output of the backtrace command and send it to
176218
177219

178-
5.
220+
5.
179221

180222
Be sure to save the ircd binary, the modules, and the core file in a
181223
safe place in case the developers need to look deeper than a backtrace

0 commit comments

Comments
 (0)