| 1 |
============================================================================ |
|---|
| 2 |
Installation Guide to PennMUSH 1.8.x |
|---|
| 3 |
============================================================================ |
|---|
| 4 |
This file explains how to install PennMUSH. It comes in three parts: |
|---|
| 5 |
A. Important background |
|---|
| 6 |
B. Installation from source (recommended) |
|---|
| 7 |
C. Installation of precompiled binaries (only for Windows platforms) |
|---|
| 8 |
|
|---|
| 9 |
If you are upgrading from a previous PennMUSH release, this is |
|---|
| 10 |
probably not the file you want to start with. Read the UPGRADING |
|---|
| 11 |
file first. |
|---|
| 12 |
|
|---|
| 13 |
DISCLAIMER: Before attempting to run a MUD of any sort, you should have |
|---|
| 14 |
some reasonable knowledge of UNIX and C. If you do not, it is _strongly_ |
|---|
| 15 |
suggested that you learn UNIX and C to some reasonable level of competency |
|---|
| 16 |
before attempting to set up a MUSH. (Note that even people using the |
|---|
| 17 |
Windows ports are encouraged to know UNIX, because that's the paradigm |
|---|
| 18 |
that PennMUSH was built with, and most resources will be written with |
|---|
| 19 |
UNIX is mind.) |
|---|
| 20 |
|
|---|
| 21 |
You may also want to take a look at Javelin's Guide for PennMUSH Gods, |
|---|
| 22 |
at http://pennmush.org/~alansz/guide.html |
|---|
| 23 |
or by ftp from pennmush.org, /pub/PennMUSH/Guide |
|---|
| 24 |
============================================================================ |
|---|
| 25 |
|
|---|
| 26 |
A. Important background |
|---|
| 27 |
|
|---|
| 28 |
Here's a quick picture of the organization of the MUSH directory tree. |
|---|
| 29 |
The "src" directory contains C source code. The "hdrs" directory |
|---|
| 30 |
contains header files for the source code. The files used by a running |
|---|
| 31 |
MUSH are in the "game" directory, which includes subdirectories "data" |
|---|
| 32 |
(current databases), "txt" (text files and directories for building them), |
|---|
| 33 |
"log" (log files), and "save" (backup databases). Finally, the "hints" |
|---|
| 34 |
directory is used during the installation process, the "po" directory |
|---|
| 35 |
holds translation message files. |
|---|
| 36 |
|
|---|
| 37 |
pennmush--+-> src |
|---|
| 38 |
+-> hdrs |
|---|
| 39 |
+-> game ------+-> data |
|---|
| 40 |
| | |
|---|
| 41 |
| +-> txt -------+-> nws |
|---|
| 42 |
| | +-> evt |
|---|
| 43 |
| | \-> hlp |
|---|
| 44 |
| | |
|---|
| 45 |
| +-> log |
|---|
| 46 |
| \-> save |
|---|
| 47 |
+-> hints |
|---|
| 48 |
+-> po |
|---|
| 49 |
+-> utils |
|---|
| 50 |
\-> win32 |
|---|
| 51 |
|
|---|
| 52 |
|
|---|
| 53 |
PennMUSH has been tested on a fairly wide variety of machines and |
|---|
| 54 |
operating systems including at least: |
|---|
| 55 |
|
|---|
| 56 |
GNU/Linux, NetBSD, FreeBSD on many architectures |
|---|
| 57 |
Mac OS X on PowerPC |
|---|
| 58 |
Microsoft Windows on x86 |
|---|
| 59 |
|
|---|
| 60 |
|
|---|
| 61 |
There's no real reason why PennMUSH shouldn't compile on any 32-bit |
|---|
| 62 |
or better BSD, System V, or POSIX operating system. Development is |
|---|
| 63 |
primarily done on GNU/Linux and Mac OS X systems. |
|---|
| 64 |
|
|---|
| 65 |
============================================================================ |
|---|
| 66 |
|
|---|
| 67 |
B. Installation from source |
|---|
| 68 |
|
|---|
| 69 |
The quickstart version of the installation is: |
|---|
| 70 |
|
|---|
| 71 |
1. On win32 only, install proper tools or read win32/README*. |
|---|
| 72 |
2. sh Configure -d or some variant |
|---|
| 73 |
3. create options.h, or make update |
|---|
| 74 |
4. make install |
|---|
| 75 |
5. possibly make customize |
|---|
| 76 |
6. Read game/README and follow those instructions |
|---|
| 77 |
|
|---|
| 78 |
Here's the process in detail: |
|---|
| 79 |
|
|---|
| 80 |
1. If you're running on win32, read one of the win32/README* files |
|---|
| 81 |
for information on how to compile with various compilers. |
|---|
| 82 |
|
|---|
| 83 |
2. On Unix systems, unpack the code and: |
|---|
| 84 |
cd pennmush |
|---|
| 85 |
./Configure -d |
|---|
| 86 |
|
|---|
| 87 |
3. EITHER: |
|---|
| 88 |
|
|---|
| 89 |
Copy options.h.dist to options.h. Note that these files stay in the |
|---|
| 90 |
pennmush directory. |
|---|
| 91 |
|
|---|
| 92 |
Edit the file. It's liberally commented. |
|---|
| 93 |
|
|---|
| 94 |
Also, cp game/mushcnf.dst to game/mush.cnf and edit. |
|---|
| 95 |
|
|---|
| 96 |
OR: |
|---|
| 97 |
|
|---|
| 98 |
Type 'make update', and answer all the questions about which MUSH |
|---|
| 99 |
options you want. |
|---|
| 100 |
|
|---|
| 101 |
You should not need to change any of the other header files. |
|---|
| 102 |
|
|---|
| 103 |
4. Do a "make install". This will build all the necessary files, and |
|---|
| 104 |
set up some symbolic links for the restart script. You will probably |
|---|
| 105 |
receive a few compilation warnings, which can generally be ignored. |
|---|
| 106 |
|
|---|
| 107 |
5. If you plan to run multiple MUSHes, you may want to do a "make |
|---|
| 108 |
customize" which will run a script to help set up a separate customized |
|---|
| 109 |
game subdirectory for each MUSH (run it once per MUSH you plan to run). |
|---|
| 110 |
Files in these subdirectories will already be customized in many ways, |
|---|
| 111 |
so what follows may be slightly different. :) This is probably broken. |
|---|
| 112 |
|
|---|
| 113 |
6. Read game/README and follow those instructions. |
|---|
| 114 |
|
|---|
| 115 |
A final thing you may want to think about is compiling announce.c or |
|---|
| 116 |
portmsg.c. These are port announcers; if your MUSH ever goes down, you can |
|---|
| 117 |
set one up, and a message will be given to a person attempting to connect |
|---|
| 118 |
to that port. Read that file for details. It is not an official MUSH |
|---|
| 119 |
piece of code; rather, it is a freely distributable program available |
|---|
| 120 |
via anonymous FTP that is included in this code because it happens to |
|---|
| 121 |
be fairly useful. Javelin suggests using portmsg - it appears to be |
|---|
| 122 |
more stable. |
|---|
| 123 |
|
|---|
| 124 |
============================================================================ |
|---|
| 125 |
|
|---|
| 126 |
C. Installation of precompiled binaries (only for Windows platforms) |
|---|
| 127 |
|
|---|
| 128 |
A pre-built binary is frequently available for win32 users who don't |
|---|
| 129 |
want to customize their MUSH server, and don't feel like compiling it |
|---|
| 130 |
themselves. This binary distribution may not contain the src, hdrs, |
|---|
| 131 |
or hints directories and may be missing several key files (like |
|---|
| 132 |
Configure) from the pennmush directory. It does include the options.h |
|---|
| 133 |
that it was built with, as an aid to those who decide later that they |
|---|
| 134 |
want to customize the server; they are useful as a baseline to work from. |
|---|
| 135 |
|
|---|
| 136 |
Using the pre-built binary is fairly simple; adjust your configuration |
|---|
| 137 |
file as in game/README, then go to the game directory and run |
|---|
| 138 |
PennMUSH.exe (you may need to use PennMUSH /run or PennMUSH /start). |
|---|
| 139 |
Alternately, if you want the MUSH to automatically start each time you |
|---|
| 140 |
turn on your machine, you can install it as a system service by running |
|---|
| 141 |
'PennMUSH /install'. PennMUSH can be removed from service status via |
|---|
| 142 |
'PennMUSH /remove'. |
|---|
| 143 |
|
|---|