PennMUSH Community

root/1.8.3/tags/p2rc2/INSTALL

Revision 794, 6.4 kB (checked in by shawnw, 2 years ago)

Assorted NetBSD and general fixes

Line 
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. ./configure 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
86
87    Useful arguments to configure:
88        a. --with-mysql=/path/to/mysql_config: Use if configure can't
89           find mysql_config in your normal path and you want SQL support.
90        b. --disable-nls: Turn off translation support if you don't need it.
91        c. --help: See all options.       
92
93        Environment variables to customize search paths:
94        CPPFLAGS=-I/path/to/extra/headers
95        LDFLAGS=-L/path/to/extra/libraries
96        CFLAGS=-Optimation and -Warning options.
97
98        VAR=arg ... ./configure
99
100        See hints/your-os.txt if present for more details and system-specific
101        help, and README.SQL for help with detecting a SQL server.
102    
103
104 3. EITHER:
105
106 Copy options.h.dist to options.h. Note that these files stay in the
107 pennmush directory.
108
109 Edit the file. It's liberally commented.
110
111 Also, cp game/mushcnf.dst to game/mush.cnf and edit.
112
113 OR:
114
115 Type 'make update', and answer all the questions about which MUSH
116 options you want.
117
118 You should not need to change any of the other header files.
119
120 4. Do a "make install". This will build all the necessary files, and
121 set up some symbolic links for the restart script.  You will probably
122 receive a few compilation warnings, which can generally be ignored.
123
124 5. If you plan to run multiple MUSHes, you may want to do a "make
125 customize" which will run a script to help set up a separate customized
126 game subdirectory for each MUSH (run it once per MUSH you plan to run).
127 Files in these subdirectories will already be customized in many ways,
128 so what follows may be slightly different. :) This is probably broken.
129
130 6. Read game/README and follow those instructions.
131
132 A final thing you may want to think about is compiling announce.c or
133 portmsg.c. These are port announcers; if your MUSH ever goes down, you can
134 set one up, and a message will be given to a person attempting to connect
135 to that port.  Read that file for details. It is not an official MUSH
136 piece of code; rather, it is a freely distributable program available
137 via anonymous FTP that is included in this code because it happens to
138 be fairly useful.  Javelin suggests using portmsg - it appears to be
139 more stable.
140
141 ============================================================================
142
143 C. Installation of precompiled binaries (only for Windows platforms)
144
145 A pre-built binary is frequently available for win32 users who don't
146 want to customize their MUSH server, and don't feel like compiling it
147 themselves.  This binary distribution may not contain the src, hdrs,
148 or hints directories and may be missing several key files (like
149 Configure) from the pennmush directory.  It does include the options.h
150 that it was built with, as an aid to those who decide later that they
151 want to customize the server; they are useful as a baseline to work from.
152
153 Using the pre-built binary is fairly simple; adjust your configuration
154 file as in game/README, then go to the game directory and run
155 PennMUSH.exe (you may need to use PennMUSH /run or PennMUSH /start).
156 Alternately, if you want the MUSH to automatically start each time you
157 turn on your machine, you can install it as a system service by running
158 'PennMUSH /install'.  PennMUSH can be removed from service status via
159 'PennMUSH /remove'.
160
Note: See TracBrowser for help on using the browser.