annotate nt/README @ 900:ac5c14a317f1

[xemacs-hg @ 2002-07-05 19:18:54 by jhar] Document Visual Studio .NET setup
author jhar
date Fri, 05 Jul 2002 19:18:54 +0000
parents 28426972f654
children 26137a2aa3bb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
1 Building and Installing XEmacs on Windows 95/98/NT/2000/XP -*- mode:outline -*-
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 David Hobley
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
4 Marc Paquette
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
5 Jonathan Harris
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
6 Ben Wing
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
8 This is a port of XEmacs to Windows 95/98/NT/2000/XP. If you are looking for a
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
9 port of GNU Emacs, see http://www.cs.washington.edu/homes/voelker/ntemacs.html.
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
10 NT 4.0 or later is required for building on Windows NT. Note that the
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
11 developers typically use NT 4.0 and Windows 2000, and there may possibly be
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
12 problems under Windows 95/98. If so, please report them to
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
13 xemacs-nt@xemacs.org; we are committed to maintaining compatibility with all
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
14 systems listed.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
16 * Required tools and sources
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
17 ============================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
18
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
19 1. You will need Visual C++ V6.0, Visual Studio .NET or later to compile
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
20 everything.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
22 Note that Visual C++ assumes that the environment variables INCLUDE and
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
23 LIB are set to specify the location of the includes and libraries.
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
24 Your PATH environment variable also needs to include the Visual Studio
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
25 vc\bin and sharedide\bin directories.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
26
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
27 Visual C++ V6.0 installs a batch file called vcvars32.bat in
812
f846c2ef930d [xemacs-hg @ 2002-04-13 20:31:27 by jhar]
jhar
parents: 771
diff changeset
28 c:\Program Files\Microsoft Visual Studio\VC98\bin\ (or wherever you
f846c2ef930d [xemacs-hg @ 2002-04-13 20:31:27 by jhar]
jhar
parents: 771
diff changeset
29 installed it) that you can run before building to set up all of these
f846c2ef930d [xemacs-hg @ 2002-04-13 20:31:27 by jhar]
jhar
parents: 771
diff changeset
30 environment variables. Alternatively, you can choose at setup time to
f846c2ef930d [xemacs-hg @ 2002-04-13 20:31:27 by jhar]
jhar
parents: 771
diff changeset
31 have these environment variables automatically set up in the registry,
f846c2ef930d [xemacs-hg @ 2002-04-13 20:31:27 by jhar]
jhar
parents: 771
diff changeset
32 which is generally a good idea.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
34 Visual Studio .NET calls this batch file vsvars32.bat and installs it in
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
35 $Installdir\Common7\Tools, but doesn't offer at install time to
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
36 automatically set these environment variables up in the registry.
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
37
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
38 2. Grab the latest XEmacs source from
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
39
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
40 ftp://ftp.xemacs.org/pub/xemacs/
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
41
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
42 or one of its mirrors listed at http://www.xemacs.org/Download/index.html.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
43
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
44 (NOTE: If you are behind a firewall and have problems with FTP access,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
45 the URL http://ftp.xemacs.org/pub/xemacs/ works just as well.)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
46
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
47 You'll also need the packages. You probably want to get the unified
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
48 packages bundle from
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
49
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
50 ftp://ftp.xemacs.org/pub/xemacs/packages/xemacs-sumo.tar.gz
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
51
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
52 If you are building with international support, you also need
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
53
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
54 ftp://ftp.xemacs.org/pub/xemacs/packages/xemacs-mule-sumo.tar.gz
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
55
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
56 Although we don't recommend it, you can also retrieve just the packages
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
57 you really need if you have an extremely slow net connection or are very
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
58 short on disk space. You can find the various packages in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
59 ftp://ftp.xemacs.org/pub/xemacs/packages/. You will need the xemacs-base
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
60 package (and mule-base, if building with international support). You'll
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
61 also need the texinfo package unless you have a copy of makeinfo.exe on
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
62 your machine. If you want to download additional or updated packages
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
63 from within XEmacs you'll need the efs, dired and vm packages. You'll
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
64 probably also want at least the edit-utils, text-modes, fsf-compat,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
65 cc-mode, prog-modes and xemacs-devel packages.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
66
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
67 Unpack the packages into "x:\your\choice\XEmacs\xemacs-packages",
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
68 for example "c:\Program Files\XEmacs\xemacs-packages".
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
69
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
70 3. At this point you can choose to build for X and/or for Win32 native GUI.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
71 If you only want to build for the Win32 native GUI then skip the next
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
72 section.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
73
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
74
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
75 ** Extra tools and sources required for X
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
77 NOTE: XEmacs has not been tested with X support under the native
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
78 Windows build for a long, long time! It may not even compile any
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
79 more. If you are interested in X support, you're better off compiling
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
80 the Cygwin version of XEmacs, which can handle both Win32 native and X
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
81 frames (in the same binary, in fact, but not at the same time), and is
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
82 actively tested with X support.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
83
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
84 If you want support for X you will also need:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
85
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
86 1. An X server. XEmacs has been tested and runs well under MI/X,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
87 available from: http://www.microimages.com/mix/. (International aka
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
88 "Mule" support even works under this X server!) Unfortunately, this is
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
89 not free, but is trialware; you have to pay $25 if you want to use it
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
90 for more than 15 days. XEmacs also runs (barely) under the free XWin
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
91 server that comes as part of the Cygwin XFree86 package, available at
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
92
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
93 ftp://sources.redhat.com/pub/cygwin/xfree/
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
94
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
95 or numerous mirrors, such as
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
96
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
97 ftp://ftp.freesoftware.com/pub/sourceware/cygwin/xfree/
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
99 There are numerous other X servers available in the same package or at
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
100 the same location, but unfortunately most of them behave even worse
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
101 than XWin. If you have any luck with any of these, *PLEASE* email
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
102 the maintainers at xemacs-nt@xemacs.org, and we'll add the info here.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
103
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
104 2. Source for the MIT X11R6.3 libraries, available from ftp.x.org.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
105
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
106 3. You'll need to compile the MIT libraries without multi-thread support.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
107 To do this, there is an example Win32.cf and site.def provided which set
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
108 the relevant flags. You will also need to apply the patch in nt/X11.patch
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
109 in the xc/lib/X11 directory which will fix the DLL definition file.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
111 Once compiled and installed, you will need to apply the patch in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
112 nt/Xmd.patch. This is messy and better solutions would be appreciated.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
113
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
114 4. Goto step 2 under 'Optional libraries' below.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
115
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
116
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
117 * Optional libraries
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
118 ====================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
119
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
120 1. You really want the XPM library. Grab the latest version of the xpm
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
121 sources (xpm-3.4k.tar.gz as of 2002-04-27) from
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
122 ftp://ftp.xemacs.org/pub/xemacs/aux/ and unpack them somewhere. Copy
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
123 nt\xpm.mak from the xemacs sources to the lib subdirectory of the xpm
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
124 sources, cd to that directory and build xpm with 'nmake -f xpm.mak'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
126 2. You probably also want PNG image support. Grab the latest versions of
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
127 zlib and libpng (zlib-1.1.4 and libpng-1.0.9 as of 2002-04-27) from
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
128 ftp://ftp.xemacs.org/pub/xemacs/aux/, unpack them somewhere and read the
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
129 respective READMEs for details on how to build them. The following
817
ece8c2170578 [xemacs-hg @ 2002-04-23 00:44:29 by jhar]
jhar
parents: 812
diff changeset
130 build procedure works for zlib-1.1.4 and libpng-1.0.9:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131
817
ece8c2170578 [xemacs-hg @ 2002-04-23 00:44:29 by jhar]
jhar
parents: 812
diff changeset
132 cd to the zlib directory and type 'nmake -f msdos\makefile.w32'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 cd to the libpng directory, rename or move the zlib directory to ..\zlib
817
ece8c2170578 [xemacs-hg @ 2002-04-23 00:44:29 by jhar]
jhar
parents: 812
diff changeset
135 and type 'nmake -f scripts\makefile.vcwin32'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 3. If you want TIFF support, grap the latest version of libtiff (tiff-v3.4
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
138 as of 2002-04-27) from ftp://ftp.xemacs.org/pub/xemacs/aux/ and unpack
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
139 it somewhere. Copy nt\tiff.mak from the xemacs sources to the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
140 contrib\winnt subdirectory of the tiff sources, cd to that directory and
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
141 build libtiff with 'nmake -f tiff.mak'. Note: tiff.mak has only been
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
142 verified to work under WinNT, not Win95 or 98. However, the latest
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
143 distribution of libtiff includes a contrib\win95\makefile.w95; that
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
144 might work.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
146 4. If you want JPEG support grab the latest version of jpegsrc (jpeg-6b as
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
147 of 2002-04-27) from ftp://ftp.xemacs.org/pub/xemacs/aux/ and read the
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
148 README for details on how to build it.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
150 5. If you want X-Face support, grab the compface distribution from
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
151 ftp://ftp.xemacs.org/pub/xemacs/aux/ and unpack it somewhere.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
152 Copy nt\compface.mak from xemacs sources to the compface directory.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
153 cd to that directory and build libcompface with 'nmake -f compface.mak'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
156 * Building
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
157 ==========
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
158
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
159 1. cd to the nt subdirectory of the xemacs distribution and copy the file
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
160 config.inc.samp to config.inc. Make any necessary modifications. This
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
161 file controls the options that XEmacs is built with:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
162
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
163 -- If you want international (aka "Mule") support, modify the appropriate
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
164 line in config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
165
771
943eaba38521 [xemacs-hg @ 2002-03-13 08:51:24 by ben]
ben
parents: 444
diff changeset
166 MULE=1
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
168 -- If you're building with XPM support, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
169 config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
170
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
171 HAVE_XPM=1
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
172 XPM_DIR="x:\location\of\your\xpm\sources"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
173
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
174 and similarly for JPEG and TIFF support.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
176 -- If you're building with PNG support, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
177 config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
178
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
179 HAVE_PNG=1
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
180 PNG_DIR="x:\location\of\your\png\sources"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
181 ZLIB_DIR="x:\location\of\your\zlib\sources"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
182
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
183 -- If you're building with GIF support, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
184 config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
185
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
186 HAVE_GIF=1
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
188 -- If you're building with X-Face support, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
189 config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
190
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
191 HAVE_XFACE=1
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
192 COMPFACE_DIR="x:\location\of\your\compface\sources"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
193
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
194 -- If you're building for X, modify the appropriate lines in config.inc
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
195 as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
196
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
197 HAVE_X_WINDOWS=1
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
198 X11_DIR=x:\root\directory\of\your\X11\installation
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
199
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
200 -- By default, XEmacs will expect to find its packages in the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
201 subdirectories "site-packages", "mule-packages" and "xemacs-packages"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
202 under the directory "c:\Program Files\XEmacs". If you want it to look
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
203 for these subdirectories elsewhere, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
204 config.inc as follows:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
206 PACKAGE_PREFIX="x:\your\package\directory"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
207
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
208 Make sure that the directory pointed to by PACKAGE_PREFIX contains
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
209 the xemacs-packages directory into which you installed the packages.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
210
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
211 -- XEmacs can build its info files more quickly if you have a copy of the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
212 makeinfo program. If you have a copy, modify the appropriate lines in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
213 config.inc as follows:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
214
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
215 MAKEINFO="x:\location\of\makeinfo.exe"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
216
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
217 If you don't have a copy of makeinfo then you'll need to have installed
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
218 the XEmacs texinfo package.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
219
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
220 2. If you want to install XEmacs when you build it, modify the appropriate
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
221 lines in config.inc as follows (you can also run XEmacs from its build
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
222 directory):
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
223
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
224 INSTALL_DIR="x:\your\installation\directory"
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
225
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
226 (By default, XEmacs will be installed in directories under the directory
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
227 "c:\Program Files\XEmacs\XEmacs-21.5".)
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
228
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
229 3. If you want to build xemacs on the command line, use
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
230 `nmake install -f xemacs.mak', or just `nmake -f xemacs.mak' if you want
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
231 to run XEmacs from its build directory. nmake will build temacs, the DOC
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
232 file, update the elc's, dump xemacs and (optionally) install the relevant
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
233 files in the directories under the installation directory.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
234
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
235 If you chose to install XEmacs, the file that you should run to start
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
236 XEmacs will be installed (by default) as
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
237 "c:\Program Files\XEmacs\XEmacs-21.5\i586-pc-win32\xemacs.exe".
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
238
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
239 To run from the build directory, run the file "src\xemacs.exe" off of the
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
240 root of the build directory.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
241
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
242 You may want to create a shortcut to the file from your Desktop or
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
243 Start Menu.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
244
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
245 4. To build using MS Visual Studio, you can use the workspace file
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
246 `nt/xemacs.dsw'. This was prepared for Visual C++ 6.0. If you have a
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
247 different version and neither file works, just open up `nt/xemacs.mak'
900
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
248 from within Visual Studio and it will offer to wrap this Makefile in a
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
249 workspace file, from which you can build. Assuming you want to run from
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
250 the build directory (which you will want to do if you are planning on
ac5c14a317f1 [xemacs-hg @ 2002-07-05 19:18:54 by jhar]
jhar
parents: 827
diff changeset
251 doing any development work on XEmacs), use the following settings in
827
28426972f654 [xemacs-hg @ 2002-05-06 14:14:33 by jhar]
jhar
parents: 817
diff changeset
252 Project/Settings...:
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
253
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
254 Under the General tab:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
255
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
256 Build command line: NMAKE /f xemacs.mak
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
257 Output file name: ..\src\xemacs.exe
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
258 Browse info file name: ..\src\temacs.bsc
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
259
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
260 Under the Debug tab:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
261
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
262 Executable for debug session: ..\src\xemacs.exe
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
263
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
264
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
265 If you want to install XEmacs when it's built, change the build command
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
266 line to "NMAKE install /f xemacs.mak". (You will have to make the same
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
267 change even if you use the provided workspace nt/xemacs.dsw.)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
268
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
269
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
270 * Debugging under MS Developer Studio
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
271 =====================================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
272
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
273 The build process always creates debugging and "Source Browser" information
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
274 in the source tree for use with DevStudio. However that information is not
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
275 very useful unless you build a debug version of XEmacs:
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
276
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
277 1. Set DEBUG_XEMACS=1 and DEPEND=1 in config.inc and rebuild.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
278
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
279 2. See instructions above for obtaining a workspace file for use with
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
280 MS Developer Studio. Build and debug your XEmacs this way.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
281
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
282 3. To display the contents of a lisp variable, type Shift-F9 (or use the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
283 menu) to bring up the QuickWatch window, type debug_print(variable) and
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
284 click Recalculate. The output will appear in a console window, as well
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
285 as in the Debug window in MS Developer Studio.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
286
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
287 4. To view Lisp variables in the "Watch" window wrap the variable in one of
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
288 the helper functions from the file src\console-msw.c, for example type
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
289 DSTRING(variable) in the "Watch" window to inspect a Lisp string.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
290
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
291
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
292 * Known Problems
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
293 ================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
294
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
295 Please look at the PROBLEMS file for known problems. Any other problems you
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
296 need clarified, please email us and we will endeavour to provide any
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
297 assistance we can:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299 The XEmacs NT Mailing List: xemacs-nt@xemacs.org
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 Subscribe address: xemacs-nt-request@xemacs.org
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
302 Ben Wing (current primary MS Windows maintainer; author of the MS Windows
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
303 Mule code and some of the dialog box code)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
304 Andy Piper (MS Windows contributor; author of the Cygwin support and the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
305 MS Windows glyph and widget code)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
306 Jonathan Harris (MS Windows contributor; author of the MS Windows redisplay
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
307 and underlying GUI code)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
308 Kirill Katsnelson (MS Windows contributor; author of the MS Windows process
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
309 and printing code and some of the dialog box code;
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
310 general guru on obscure MS Windows programming topics)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
311 David Hobley (early MS Windows contributor)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
312 Marc Paquette (early MS Windows contributor)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 428
diff changeset
313 August Hill (early MS Windows contributor)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315 and others.