Mercurial > hg > xemacs-beta
diff nt/README @ 400:a86b2b5e0111 r21-2-30
Import from CVS: tag r21-2-30
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:14:34 +0200 |
parents | 7d59cb494b73 |
children | b8cc9ab3f761 |
line wrap: on
line diff
--- a/nt/README Mon Aug 13 11:13:33 2007 +0200 +++ b/nt/README Mon Aug 13 11:14:34 2007 +0200 @@ -1,4 +1,4 @@ - Building and Installing XEmacs on Windows NT +Building and Installing XEmacs on Windows NT -*- mode:outline -*- David Hobley Marc Paquette @@ -8,28 +8,61 @@ and others who worked on the GNU Emacs port to NT. Their version is available from http://www.cs.washington.edu/homes/voelker/ntemacs.html -To get it working you will need: + +* Required tools and sources +============================ -1. You will need Visual C++ V4.0 or later to compile everything. Personally we - have tested V4.0, V4.2 and V5.0. - Note that Visual C++ assumes a couple of environment variables INCLUDE and - LIB to be set which specify the location of the includes and libraries. - Your PATH environment variable also needs to include the DevStudio vc\bin - and sharedide\bin directories. +1. You will need Visual C++ V4.0 or later to compile everything. Personally + we have tested V4.0, V4.2, V5.0 and v6.0. + + Note that Visual C++ assumes that the environment variables INCLUDE and + LIB are set to specify the location of the includes and libraries. + Your PATH environment variable also needs to include the DevStudio + vc\bin and sharedide\bin directories. + Visual C++ V5.0 installs a batch file called vcvars32.bat in c:\Program Files\DevStudio\VC\bin\ (or wherever you installed it) that you can run before building to set up all of these environment variables. -2. Grab the latest XEmacs source from ftp.xemacs.org if necessary. All Win32 - support is in the nt\ subdirectory. You'll also need the xemacs-base - package from the binary-packages subdirectory and you'll probably also - want at least the edit-utils, text-modes, fsf-compat, cc-mode, - prog-modes and xemacs-devel packages. +2. Grab the latest XEmacs source from ftp.xemacs.org if necessary. + + You'll also need the xemacs-base package from the binary-packages + subdirectory and you'll probably also want at least the edit-utils, + text-modes, fsf-compat, cc-mode, prog-modes and xemacs-devel + packages. + + You'll also need the texinfo package unless you have a copy of + makeinfo.exe on your machine. + Unpack the packages into, say, "c:\Program Files\XEmacs\xemacs-packages". -3. At this point you can select X or Win32 native GUI support. +3. At this point you can choose to build for X and/or for Win32 native GUI. + If you only want to build for the Win32 native GUI then skip the next + section. + + +** Extra tools and sources required for X + +If you want support for X you will also need: + +1. An X server. MI/X is available on the Internet for free; It is + available from: http://www.microimages.com/www/html/freestuf/mixdlfrm.htm + +2. Source for the MIT X11R6.3 libraries, available from: ftp.x.org -If you want to build for native GUI: +3. You'll need to compile the MIT libraries without multi-thread support. + To do this, there is an example Win32.cf and site.def provided which set + the relevant flags. You will also need to apply the patch in nt/X11.patch + in the xc/lib/X11 directory which will fix the DLL definition file. + + Once compiled and installed, you will need to apply the patch in + nt/Xmd.patch. This is messy and better solutions would be appreciated. + +4. Goto step 2 under 'Optional libraries' below. + + +* Optional libraries +==================== 1. If you want XPM image and toolbar support grab the latest version of the xpm sources (xpm-3.4k.tar.gz at time of writing) and unpack them somewhere. @@ -63,10 +96,14 @@ directory. cd to that directory and build libcompface with 'nmake -f compface.mak'. -6. cd to the nt subdirectory of the xemacs distribution and build xemacs: + +* Building +========== + +1. cd to the nt subdirectory of the xemacs distribution and build xemacs: `nmake install -f xemacs.mak`, but read on before hitting Enter. -7. If you're building with XPM support, add this to the nmake command line: +2. If you're building with XPM support, add this to the nmake command line: HAVE_XPM=1 XPM_DIR="x:\location\of\your\xpm\sources" and similarly for JPEG and TIFF support. @@ -78,77 +115,79 @@ HAVE_GIF=1 If you're building with X-Face support, add this to the nmake command line: - HAVE_XFACE=1 COMPFACE_DIR="x:\location\of\your\compface\sources" + HAVE_XFACE=1 COMPFACE_DIR="x:\location\of\your\compface\sources" -8. By default, XEmacs will expect to find its packages in the subdirectories + If you're building for X, add this to the nmake command line: + HAVE_X=1 X11_DIR=x:\root\directory\of\your\X11\installation + +3. By default, XEmacs will expect to find its packages in the subdirectories "site-packages", "mule-packages" and "xemacs-packages" under the package prefix directory "c:\Program Files\XEmacs". If you want it to look for these subdirectories elsewhere, add this to the nmake command line: PACKAGE_PREFIX="x:\your\package\directory" If you change your mind and want to alter the package prefix directory - after you've built XEmacs, delete the file .\obj\emacs.obj and rebuild with - the new PACKAGE_PREFIX. + after you've built XEmacs, delete the file nt\obj\emacs.obj and rebuild + with the new PACKAGE_PREFIX setting. -9. By default, XEmacs will be installed in directories under the directory - "c:\Program Files\XEmacs\XEmacs-21.0". If you want to install it elsewhere, - add this to the nmake command line: +4. By default, XEmacs will be installed in directories under the directory + "c:\Program Files\XEmacs\XEmacs-21.2". If you want to install it + elsewhere, add this to the nmake command line: INSTALL_DIR="x:\your\installation\directory" -10. Now you can press Enter. nmake will build temacs, the DOC file, update the - elc's, dump xemacs and install the relevant files in the directories under - the installation directory. Unless you set INSTALL_DIR above, the file that - you should run to start XEmacs will be installed as - "c:\Program Files\XEmacs\XEmacs-21.0\i386-pc-win32\runemacs.exe". You may - want to create a shortcut to that file from your Desktop or Start Menu. +5. XEmacs can build its info files more quickly if you have a copy of the + makeinfo program. If you have a copy, add this to the nmake command line: + MAKEINFO="x:\location\of\makeinfo.exe" + If you don't have a copy of makeinfo then you'll need to have installed + the XEmacs texinfo package. + +6. Now you can press Enter. nmake will build temacs, the DOC file, update + the elc's, dump xemacs and install the relevant files in the directories + under the installation directory. + + Unless you set INSTALL_DIR above, the file that you should run to start + XEmacs will be installed as + "c:\Program Files\XEmacs\XEmacs-21.2\i586-pc-win32\runxemacs.exe". + You may want to create a shortcut to that file from your Desktop or + Start Menu. -11. The build process always creates debugging and "Source Browser" information - in the source tree for use with MS DevStudio. If you actually want to debug - XEmacs you should run XEmacs from the source directory instead of from the - installation directory. You should probably also build a debug version of - XEmacs; to do this start with a clean source tree and add DEBUG_XEMACS=1 to - the nmake command line. You probably don't want to install your debug build - so you should tell nmake to build the 'all' target instead of the 'install' - target. + +* Debugging under MS Developer Studio +===================================== + +The build process always creates debugging and "Source Browser" information +in the source tree for use with DevStudio. If you actually want to debug +XEmacs you should probably build a debug version of XEmacs: - To make use of the debugging and "Source Browser" information, create a new - "console" project in MS DevStudio and, under Project/Settings, set: +1. Delete the directory nt\obj and it's contents. + +2. Add DEBUG_XEMACS=1 to the nmake command line and rebuild. You probably + don't want to install your debug build so you should tell nmake to build + the 'all' target instead of the 'install' target. + +3. To make use of the debugging and "Source Browser" information, create a + new "console" project in DevStudio and, under Project/Settings, set: Debug: executable name = full path of src\xemacs.exe Link: output file name = full path of src\temacs.exe Browse Info: browse info file name = full path of src\temacs.bsc Remember to close the Source Browser file in DevStudio before rebuilding. - -If you want support for X you will need: - -1. An X server. MI/X is available on the Internet for free; It is - available from: http://www.microimages.com/www/html/freestuf/mixdlfrm.htm +4. Start XEmacs from within DevStudio or by running src\xemacs.exe so that + you get a console window which may contain helpful debugging info. -2. The MIT X11R6.3 libraries available from: ftp.x.org - -3. You'll need to compile the MIT libraries without multi-thread support. - To do this, there is an example Win32.cf and site.def provided which - set the relevant flags. You will also need to apply the patch in - nt/X11.patch in the xc/lib/X11 directory which will fix the DLL definition - file. Once compiled and installed, you will need to apply the following - patch to Xmd.h. This is messy and better solutions would be appreciated. +5. To display the contents of a lisp variable click Debug/QuickWatch, type + debug_print(variable) and click Recalculate. The output will appear in + the console window. -4. Goto 2 under 'native GUI' above and add this to the nmake command line: - HAVE_X=1 X11_DIR=x:\root\directory\of\your\X11\installation +6. To view lisp variables in the "Watch" window wrap the variable in one of + the helper functions from the file src\console-msw.c. eg type + DSTRING(variable) in the "Watch" window to inspect a lisp string. + ---- Xmd.h~ Thu Jun 08 23:20:40 1995 -+++ Xmd.h Sun Mar 16 13:09:10 1997 -@@ -150,8 +150,9 @@ - typedef CARD16 BITS16; - typedef CARD8 BYTE; - -+#ifndef WIN32 - typedef CARD8 BOOL; -- -+#endif - -Known Problems: -Please look at the TODO list for the current list of problems and people -working on them. +* Known Problems +================ + +Please look at the PROBLEMS file for known problems and at the TODO list for +the current list of problems and people working on them. Any other problems you need clarified, please email us and we will endeavour to provide any assistance we can: