OOMon: The OO IRC Monitor Bot

How to build OOMon from CVS sources

NOTE: Text in fixed width format is the input and output you should see. Boldface indicates user input. Highlighted text is user input that is subject to change. Output may vary slightly, depending on your configuration.

1. Make sure you have CVS installed, then checkout the code from CVS.

$ cvs -d:pserver:anonymous@oomon.cvs.sourceforge.net:/cvsroot/oomon login Logging in to :pserver:anonymous@oomon.cvs.sourceforge.net:2401/cvsroot /oomon CVS password: (leave blank, just press return) $ cvs -Q -z3 -d:pserver:anonymous@oomon.cvs.sourceforge.net:/cvsroot /oomon co oomon

2. Change to the newly created "oomon" directory.

$ cd oomon

3. Because you're building from sources in CVS, you will have to generate the "./configure" script. Make sure you have Autoconf installed, then generate "defs.h.in" and "configure".

$ autoheader autoconf/configure.ac > defs.h.in $ autoconf autoconf/configure.ac > configure ; chmod 755 configure

NOTE: I know there are other ways to accomplish the above, but this appears to be the best way to play nice with the many different platforms and autoconf versions that exist.

4. Build OOMon just as you would if you were building from a snapshot or release tarball.

$ ./configure --prefix=/home/avj/sandbox/cvs/oomon-install checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu this is OOMon version 2.3-DEV checking for g++... g++ checking for C++ compiler default output... a.out checking whether the C++ compiler works... yes --- snip --- configure: creating ./config.status config.status: creating makefile config.status: creating defs.h OOMon has been configured with the following options: -- snip -- Compiler: g++ Compiler flags: -g -O2 -Wall Linker flags: Libraries: -lresolv -lcrypt -lstdc++ -lnsl

5. Run `make` to build the executable.

$ make g++ -g -O2 -Wall -I./libs -DHAVE_CONFIG_H -DBOOST_DISABLE_THREADS -DLOGDIR=\"/home/avj/sandbox/cvs/oomon-install/logs\" -DETCDIR=\"/home/avj/sandbox/cvs/oomon-install/etc\" -c action.cc g++ -g -O2 -Wall -I./libs -DHAVE_CONFIG_H -DBOOST_DISABLE_THREADS -DLOGDIR=\"/home/avj/sandbox/cvs/oomon-install/logs\" -DETCDIR=\"/home/avj/sandbox/cvs/oomon-install/etc\" -c adnswrap.cc g++ -g -O2 -Wall -I./libs -DHAVE_CONFIG_H -DBOOST_DISABLE_THREADS -DLOGDIR=\"/home/avj/sandbox/cvs/oomon-install/logs\" -DETCDIR=\"/home/avj/sandbox/cvs/oomon-install/etc\" -c arglist.cc --- snip ---

6. Run `make install` to install OOMon in the directory you chose with `--prefix`.

$ make install /bin/mkdir -p /home/avj/sandbox/cvs/oomon-install /bin/mkdir -p /home/avj/sandbox/cvs/oomon-install/bin /bin/mkdir -p /home/avj/sandbox/cvs/oomon-install/etc /bin/mkdir -p /home/avj/sandbox/cvs/oomon-install/logs /usr/bin/install -c oomon /home/avj/sandbox/ cvs/oomon-install/bin /usr/bin/install -c mkpasswd /home/avj/sandbox/ cvs/oomon-install/bin /usr/bin/install -c -m 644 oomon.cf /home/avj/sandbox/ cvs/oomon-install/etc/oomon.cf.sample /usr/bin/install -c -m 644 oomon.cf /home/avj/sandbox/ cvs/oomon-install/etc/oomon.cf -- snip --

7. Edit the configuration files in '$PREFIX/etc' to your liking. NOTE: All configuration files have a corresponding (and identical to the original) '.sample' file to keep as a reference.

$ cd /home/avj/sandbox/cvs/oomon-install/etc $ vi oomon.cf userlist.cf remotes.cf scanner.cf oomon-motd.txt

8. Start OOMon!

$ cd /home/avj/sandbox/cvs/oomon-install/bin $ ./oomon

This document is XHTML 1.0 Strict and CSS 3 compliant. Site issues/problems? Contact <avj> [at] <users.sf.net>