[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Source Compilation - info



[I sent this from akur@BSDI.COM but it bounced because changing address in
esquire, except for the pbmserv-users list, has been made difficult!]

At 05:12 PM 4/20/98 -0500, Jason Reed wrote:
>What's up, and how the heck have people managed to compile this on *any*
>system other than Richard's itself?

At least two other people have managed to compile them on their other systems.

John Williams <williams@morinda.com> has his Experimental PBeM Server
<xpbmserv@morinda.com> running on Linux. Linux is, as far as I know, the
same system Richard's server is running on.

I <akur@bsdi.com> have my own PBeM Server <pbmserv@bsdi.com>. It is running
on BSD/OS 4.0.

We both use g++, GNU's free C++ compiler for UNIX.

>Neither fetch.2 nor the ftp site let me at any sort of Makefile, a whole
>slew of programs seem to be missing from $PBMHOME/bin, I've only been able
>to partially reconstruct the directory structure by guessing, and admin.pl
>appears a truly odd mix of perl and C++.

Though Richard does not make his makefile available to the public, I do
:-), so you might want to fetch a sample from my server <pbmserv@bsdi.com>.
To access the directory with C++ sources of the games and the makefile to
make the games (Richard calls this directory src.2/; I call it src/), you
would use the 'fetch' command (as opposed to Richard's 'fetch.2'), while to
access the administrative directory with some C, some Perl and some
shellscript sources (Richard calls this directory src/; I call it admin/)
and *their* makefile, you would use 'fetch.admin'. In other words, I have
makefiles in each directory.

The really needed directory structure is actually simple (but it needs to
be documented anyhow). You need to have the directories:
    bin etc games help history input lists log ratings standings tmp
in the directory where you want to have pbmserv installed (I have mine in
~/pbmserv/, but you can also put it in your own home directory).

Make them start out empty (!), except that you have to put a welcome
message (as a text file) in etc/welcome (this file is sent when someone
signs up to your pbmserv). You should also install helpfiles at help/
(particularly, help/summary and help/reference are needed, as the former is
sent with plain 'help' command and the latter when any error occurs).

This, of course, will require some changes from my source files that depend
on the customizations I have made, including the fact that I am using my
own home-made list digest processor :-)

I install my source files in admin/ and src/ and Richard does so in his
src/ and src.2/. Anyway, adjust the environment variables set in
admin/pbmserv.pl and make everything as directed by my makefile and you
should have the required files compiled in bin/. I have put some files in
sbin/ instead, but you can put everything in bin/ (by changing the makefile
and the codes that call them -- use grep to locate them). Two extremely
required files are pbmserv and sendmail. Also adjust admin/sendmail.sh to
use the path to your own sendmail (fetch Richard's sendmail.sh for his
simpler sendmail.sh; not fetch.2).

All files in admin/ are needed, while you can choose the games you want to
install in src/ (remember to also have the files they need or include --
this is easy, thanks to the structure of my src/makefile).

Once that is done, you would .forward incoming mails to:
    |/pbmservdir/bin/pbmserv
or, if you want to log errors, you can try:
    |/pbmservdir/bin/pbmserv >>/pbmservdir/log/log.err 2>&1
(note that the | is needed). Naturally, you would replace /pbmservdir/ with
the actual absolute path of your pbmserv.

You might face problems with firewalls and other problems, but when those
have been taken care of, you have a pbmserv!

Good luck.

PS: For a list of (many) play by e-mail servers,
    visit my home page at http://come.to/akur