README.MSVC4
1 Compiling CircleMUD using Microsoft Visual C++ v4.x 2 by Jeremy Elson (jelson@circlemud.org) 3 For help, write to help@circlemud.org 4 5 CircleMUD compiles relatively easily under Windows 95 and NT using 6 the Microsoft Visual C++ compiler version 4.x. These instructions won't 7 work for any compiler except for MSVC++ 4.0; if you have a different 8 compiler, take a look at the main README.WIN file for instructions. 9 10 Note MSVC++ 4.x is a commercial product and must be bought from your local 11 software store. It can't be downloaded from any (legal) FTP sites, and I 12 will not send you a copy, so please don't ask. Use the FREE GNU-Win32 13 package mentioned in the README.WIN file if you don't want to buy MSVC. 14 15 16 1) Download the latest version of CircleMUD. You can always find the latest 17 version at the following anonymous FTP sites: 18 19 ftp.circlemud.org:/pub/CircleMUD 20 ftp2.circlemud.org:/pub/CircleMUD 21 22 You can also find information at the WWW site: 23 24 http://www.circlemud.org/ 25 26 The latest version will be called something ending in .zip, like 27 "circle30bplXX.zip". (where 'XX' is the patchlevel) 28 29 2) When you unzip the .zip archive, MAKE SURE to use an unzip program that 30 can handle long filenames. Old versions of pkunzip (e.g. 2.x) do NOT 31 handle long filenames. WinZip (http://www.winzip.com) can. 32 33 3) Open a window with an MS-DOS prompt. Note, this does not mean you are 34 "compiling under DOS" -- the MS-DOS prompt is just a command-line 35 interface to Windows 95. This step can be done by going to the Start 36 menu, going to the Programs submenu, and selecting "MS-DOS prompt". All 37 the following commands are performed at the MS-DOS prompt. 38 39 4) Use the CD command to switch to the main CircleMUD directory. For 40 example, type "CD \circle30bplXX", where 'XX' is the patchlevel of the 41 version of Circle you downloaded. Also note that the full path will 42 depend on where you decided to uncompress it. 43 44 5) Go to the src directory and rename conf.h.win to conf.h, and replace 45 the Makefile with Makefile.msvc. This can be accomplished with the 46 following commands: 47 48 cd src 49 copy conf.h.win conf.h 50 del Makefile 51 copy Makefile.msvc Makefile 52 53 6) If you have MSVC++ 4.x installed in C:\MSDEV, skip to the next step. 54 Otherwise, bring up the Makefile in your favorite text editor (for 55 example, to use the DOS EDIT command, type "EDIT MAKEFILE".) Find the 56 two lines that start with "CLFAGS =" and "LIB=", respectively. On BOTH 57 lines, change the part that says "C:\MSDEV\" to reflect where your copy 58 of MSVC++ 4.x is installed. Then, save the Makefile and exit the 59 editor. You should still be in the "src" directory. 60 61 7) Make sure that MSVC++ binary directory (i.e., the directory where 62 the actual programs are kept, such as NMAKE.EXE) is in your PATH. You 63 can see what your path is by typing PATH. Your MSVC++ binary directory 64 should be listed (for example, C:\MSDEV\BIN). Add MSVC's binary 65 directory to your path if it's not already there. If you do not know 66 how to change your path, contact someone who knows how to use the DOS 67 command prompt for help, or check the manual to learn how to use the 68 PATH command. 69 70 8) To compile Circle, stay in the src directory and type: 71 72 NMAKE 73 74 This will invoke Microsoft's make program and should build the entire 75 CircleMUD server and create a file called 'circle.exe'. If you see the 76 error message "Bad command or filename", then MSVC++'s binary directory 77 is not in your path, so your computer can't find MS's NMAKE program. 78 Go back to step 7. 79 80 9) Make sure your TCP/IP stack is installed, correctly configured, and 81 running. If you are already using TCP/IP applications from your 82 Windows machine such as Netscape or telnet, then no changes should be 83 necessary; otherwise go to the Control Panel's "Network" settings, 84 select "Add Protocol", and add Microsoft's TCP/IP. Consult the 85 documentation for Windows 95 (do not write me mail) if you have any 86 additional questions about how to set up TCP/IP under Windows 95. 87 88 YOU MUST INSTALL AND CONFIGURE YOUR TCP/IP STACK, EVEN IF YOU ARE NOT 89 CONNECTED TO THE INTERNET. 90 91 10) Go back to Circle's main directory (like in Step 4), and run the server 92 by typing "src\circle". You should see boot messages appearing on the 93 screen. Wait until the line "No connections. Going to sleep." appears 94 at the bottom of the screen -- this means Circle is ready to accept 95 connections. Go on to step 11 if you see this. 96 97 If you see "Winsock Error #10047", your TCP/IP stack is not correctly 98 configured; go back to Step 9. 99 100 If you see "Fatal error changing to data directory: No such file 101 or directory", that means you are trying to run Circle from the 102 "src" directory. Your current directory must be Circle's top-level 103 directory -- the same directory that you were in during Step 4. 104 105 11) Start a telnet program (SEE NOTE BELOW). Open a connection to your 106 own machine ("localhost", or whatever the name of your machine happens 107 to be) on port 4000. You should see the MUD's login screen welcoming 108 you and asking for your name. 109 110 VERY IMPORTANT NOTE: The standard telnet program that comes free with 111 Windows 95 and NT does *not* work correctly for connecting to any MUD 112 because it does not support telnet's line-mode interface (so you can't 113 see what you are typing). Note that simply turning on the "local echo" 114 option does not fix the problem; this prevents echo from being turned 115 off while you're typing your password, and screws up the display if you 116 try to hit the backspace key too many times. 117 118 Do not use Microsoft's telnet applet -- instead, use EWAN, CRT, zMUD, or 119 any other Winsock telnet application. EWAN and CRT can be downloaded 120 from any number of sites (for example, www.windows95.com). zMUD is an 121 excellent MUD client; for more information, see the official home page 122 at http://www.zuggsoft.com/zmud/zmudinfo.htm . 123 124 125 If you have problems, read this document again. Most of the questions 126 I receive in email are answered in this README file. If you're still 127 having problems and you're *sure* that this document doesn't answer 128 your question, try reading the CircleMUD FAQ at 129 ftp://ftp.circlemud.org/pub/CircleMUD/FAQ. If all else fails, you can 130 get help by sending mail to help@circlemud.org. Note, however, that 131 if you ask a question that is answered in this document, all I'll do 132 is mail it to you. 133 134 Have fun! 135 136 Jeremy Elson 137 jelson@circlemud.org 138 (To get help, write to help@circlemud.org)