@(#)$eterna: INSTALL,v 2.22 2005/12/22 17:06:44 mrg Exp $ to compile ircii o ircii requires an ANSI C compiler. this was not the case in in any version prior to 2004, but 15 years of C89 is long enough... o using configure: - we recommend that you create an object directory in the same directory that this file is in. you should then cd into your new directory and run the `configure' script in the source directory. eg: % mkdir obj-sparc % cd obj-sparc % ../configure if you are using an old version of system v, you might need `sh ../configure'. - this script tries to guess various things about your system that are important to it compiling. it creates various files in this process. configure takes a couple of minutes to run. - when this has finished, you might want to check the Makefile for the places ircii will be installed. the defaults are /usr/local/share, /usr/local/bin and /usr/local/man. you can either do `make prefix=/local' or set it with configure, by calling configure with the `--prefix=/local' switch. - you can set the compile-time paranoid switch (currently turns of CTCP VERSION and FINGER commands returning host system, and user details) with the `--with-paranoid' flag to configure. - older versions of ircii used an insecure cipher that has now been replaced with a CAST-128 cipher. to disable the new cipher and use the old cipher (strongly *not* recommended), use the `--without-cast' flag to configure. o to compiling ircii, type `make' in your object directory. this will compile the `irc', `ircflush', `ircio', and `wserv' programs that reside in the source sub directory. o once the programs are compiled, you can install them with `make install'. this will install all the binaries, scripts, translation tables, help files, and the ircii manual page. if you don't install the scripts then ircii becomes much less usable. o you can now delete the object files and binaries from your object directory with `make clean'. `make distclean' will also delete any file that `configure' created. this is useful for then using the same sources to compile on a different architecture. o there is a relatively "lame" Makefile generated if you try to use the old method of "./configure && make" while in the ircii root directory. if you're using the old method, you're probably not even going to read this file... notes on SOCKS support. o in order to compile in SOCKS support, you must use `configure' and specify the `--with-socks' switch. you can optionally specify a path (e.g. `--with-socks=/usr/local/lib/libsocks.a'). otherwise, configure will look for the SOCKS library only in the directory specified by the `--prefix' option (`/usr/local/lib' by default). o an irc server getting a connection through a SOCKS proxy will not be able to do RFC1413 identification properly. if you have an identd running on the SOCKS proxy host, the irc server will incorrectly identify all users as `root'. o SOCKS support is incompatible with ircii's support for non-blocking connects. if you don't know what this means, don't worry about it. notes on portability and bugs. o if you encounter a bug, try the provided `ircbug' script which will submit a bug report and have it entered automatically into the ircii bugs database. send email with the subject of `--help' (no body necessary, but it is ignored) to query-pr@ircii.eterna.com.au to see how to use this service. o if you are using linux and receive a message from `configure' that it can't find tgetent or you get missing tputs symbols, try installing the ncurses-devel package. o some exotic mips machines are not yet accounted for in the configuration process, and must have certain things set specially in the Makefile (these are noted in the Makefile itself). o apparently you will get errors of "__inet_addr" or "__inet_ntoa" as being undefined, if you have BIND version 8 installed into /usr/local (the default) and you use gcc. this is caused by the annoyingly stupid defines in the BIND provided header file, which gcc will happily pick up from /usr/local/include. the solution to this is to add -lbind to the LIBS= line in the Makefile, once configure has run. o on solaris systems with libresolv patches incorporated may see instability (crashes) in the client. (sunos 5.5.1 patches 103680-01, 103683-01, 103686-01, 103743-01, and 103663-01). o Under NEXTSTEP, after you have run configure, you can change the CFLAGS and add "-arch m68k -arch i486 -arch hppa -arch sparc" (without the quotes) to create a multiple architecture binary for all supported hardware platforms.