comparison PROBLEMS @ 371:cc15677e0335 r21-2b1

Import from CVS: tag r21-2b1
author cvs
date Mon, 13 Aug 2007 11:03:08 +0200
parents 1d62742628b6
children 6240c7796c7a
comparison
equal deleted inserted replaced
370:bd866891f083 371:cc15677e0335
1 -*- mode:outline -*- 1 -*- mode:outline -*-
2 2
3 This file describes various problems that have been encountered 3 This file describes various problems that have been encountered
4 in compiling, installing and running XEmacs. It has been updated for 4 in compiling, installing and running XEmacs. It has been updated for
5 XEmacs 21.1. 5 XEmacs 21.2.
6 6
7 This file is rather large, but we have tried to sort the entries by 7 This file is rather large, but we have tried to sort the entries by
8 their respective relevance for XEmacs, but may have not succeeded 8 their respective relevance for XEmacs, but may have not succeeded
9 completely in that task. The file is divided into four parts: 9 completely in that task. The file is divided into four parts:
10 10
27 27
28 28
29 * Problems with building XEmacs 29 * Problems with building XEmacs
30 =============================== 30 ===============================
31 31
32 ** General 32 ** Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using
33 *** Don't use -O2 with gcc 2.8.1 and egcs 1.0 under SPARC architectures
34 without also using `-fno-schedule-insns'.
35
36 gcc will generate incorrect code otherwise, typically resulting in
37 crashes in the function skip-syntax-backward.
38
39 *** egcs-1.1
40
41 There have been reports of egcs-1.1 not compiling XEmacs correctly on
42 Alpha Linux. There have also been reports that egcs-1.0.3a is O.K.
43
44 *** Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using
45 `-fno-strength-reduce'. 33 `-fno-strength-reduce'.
46 34
47 gcc will generate incorrect code otherwise. This bug is present in at 35 gcc will generate incorrect code otherwise. This bug is present in at
48 least 2.6.x and 2.7.[0-2]. This bug has been fixed in GCC 2.7.2.1 and 36 least 2.6.x and 2.7.[0-2]. This bug has been fixed in GCC 2.7.2.1 and
49 later. This bug is O/S independent, but is limited to x86 architectures. 37 later. This bug is O/S independent, but is limited to x86 architectures.
50 38
51 This problem is known to be fixed in egcs (or pgcc) 1.0 or later. 39 This problem is known to be fixed in egcs (or pgcc) 1.0 or later.
52 40
53 *** Don't use -O2 with gcc 2.7.2 under Intel architectures without also 41 ** Don't use -O2 with gcc 2.7.2 under Intel architectures without also
54 using `-fno-caller-saves'. 42 using `-fno-caller-saves'.
55 43
56 gcc will generate incorrect code otherwise. This bug is still 44 gcc will generate incorrect code otherwise. This bug is still
57 present in gcc 2.7.2.3. There have been no reports to indicate the 45 present in gcc 2.7.2.3. There have been no reports to indicate the
58 bug is present in egcs 1.0 (or pgcc 1.0) or later. This bug is O/S 46 bug is present in egcs 1.0 (or pgcc 1.0) or later. This bug is O/S
59 independent, but limited to x86 architectures. 47 independent, but limited to x86 architectures.
60 48
61 This problem is known to be fixed in egcs (or pgcc) 1.0 or later. 49 This problem is known to be fixed in egcs (or pgcc) 1.0 or later.
62 50
63 *** When using gcc, you get the error message "undefined symbol __fixunsdfsi". 51 ** Excessive optimization with pgcc can break XEmacs
64 When using gcc, you get the error message "undefined symbol __main".
65
66 This means that you need to link with the gcc library. It may be called
67 "gcc-gnulib" or "libgcc.a"; figure out where it is, and define LIB_GCC in
68 config.h to point to it.
69
70 It may also work to use the GCC version of `ld' instead of the standard one.
71
72 *** Excessive optimization with pgcc can break XEmacs
73 52
74 It has been reported on some systems that compiling with -O6 can lead 53 It has been reported on some systems that compiling with -O6 can lead
75 to XEmacs failures. The workaround is to use a lower optimization 54 to XEmacs failures. The workaround is to use a lower optimization
76 level. -O2 and -O4 have been tested extensively. 55 level. -O2 and -O4 have been tested extensively.
77 56
78 All of this depends heavily on the version of pgcc and the version 57 All of this depends heavily on the version of pgcc and the version
79 of libc. Snapshots near the release of pgcc-1.0 have been tested 58 of libc. Snapshots near the release of pgcc-1.0 have been tested
80 extensively and no sign of breakage has been seen on systems using 59 extensively and no sign of breakage has been seen on systems using
81 glibc-2. 60 glibc-2.
82 61
83 *** src/Makefile and lib-src/Makefile are truncated--most of the file missing. 62 ** `compress' and `uncompress' not found and XFree86
84
85 This can happen if configure uses GNU sed version 2.03. That version
86 had a bug. GNU sed version 2.05 works properly.
87
88 *** When compiling with X11, you get "undefined symbol _XtStrings".
89
90 This means that you are trying to link emacs against the X11r4 version of
91 libXt.a, but you have compiled either Emacs or the code in the lwlib
92 subdirectory with the X11r5 header files. That doesn't work.
93
94 Remember, you can't compile lwlib for r4 and emacs for r5, or vice versa.
95 They must be in sync.
96
97 *** test-distrib says that the distribution has been clobbered
98 or, temacs prints "Command key out of range 0-127"
99 or, temacs runs and dumps xemacs, but xemacs totally fails to work.
100 or, temacs gets errors dumping xemacs
101
102 This can be because the .elc files have been garbled. Do not be
103 fooled by the fact that most of a .elc file is text: these are binary
104 files and can contain all 256 byte values.
105
106 In particular `shar' cannot be used for transmitting GNU Emacs. It
107 typically truncates "lines". (this does not apply to GNU shar, which
108 uses uuencode to encode binary files.)
109
110 If you have a copy of Emacs that has been damaged in its nonprinting
111 characters, you can fix them by running:
112
113 make all-elc
114
115 This will rebuild all the needed .elc files.
116
117 *** `compress' and `uncompress' not found and XFree86
118 63
119 XFree86 installs a very old version of libz.a by default ahead of where 64 XFree86 installs a very old version of libz.a by default ahead of where
120 more modern version of libz might be installed. This will cause problems 65 more modern version of libz might be installed. This will cause problems
121 when attempting to link against libMagick. The fix is to remove the old 66 when attempting to link against libMagick. The fix is to remove the old
122 libz.a in the X11 binary directory. 67 libz.a in the X11 binary directory.
123 68
124 69 ** Excessive optimization on AIX 4.2 can lead to compiler failure.
125 ** AIX
126 *** On AIX 4.3, you must specify --with-dialogs=athena with configure
127
128 *** The libXt shipped with AIX 4.3 up to 4.3.2 is broken. This causes
129 xemacs -nw to fail in various ways. The official APAR is this:
130
131 APAR NUMBER: <IX89470> RESOLVED AS: PROGRAM ERROR
132
133 ABSTRACT:
134 <IX89470>: LIBXT.A INCORRECT HANDLING OF EXCEPTIONS IN XTAPPADDINPUT
135
136 The solution is to install X11.base.lib at version >=4.3.2.5.
137
138 *** On AIX, you get this compiler error message:
139
140 Processing include file ./XMenuInt.h
141 1501-106: (S) Include file X11/Xlib.h not found.
142
143 This means your system was installed with only the X11 runtime i.d
144 libraries. You have to find your sipo (bootable tape) and install
145 X11Dev... with smit.
146
147 *** On AIX 4.1.2, linker error messages such as
148 ld: 0711-212 SEVERE ERROR: Symbol .__quous, found in the global symbol table
149 of archive /usr/lib/libIM.a, was not defined in archive member shr.o.
150
151 This is a problem in libIM.a. You can work around it by executing
152 these shell commands in the src subdirectory of the directory where
153 you build Emacs:
154
155 cp /usr/lib/libIM.a .
156 chmod 664 libIM.a
157 ranlib libIM.a
158
159 Then change -lIM to ./libIM.a in the command to link temacs (in
160 Makefile).
161
162 *** Excessive optimization on AIX 4.2 can lead to compiler failure.
163 70
164 Valdis.Kletnieks@vt.edu writes: 71 Valdis.Kletnieks@vt.edu writes:
165 At least at the b34 level, and the latest-and-greatest IBM xlc 72 At least at the b34 level, and the latest-and-greatest IBM xlc
166 (3.1.4.4), there are problems with -O3. I haven't investigated 73 (3.1.4.4), there are problems with -O3. I haven't investigated
167 further. 74 further.
168 75
169 76 ** Sed problems on Solaris 2.5
170 ** SunOS/Solaris
171 *** Dumping error when using GNU binutils / GNU ld on a Sun.
172
173 Errors similar to the following:
174
175 Dumping under the name xemacs unexec():
176 dldump(/space/rpluim/xemacs-obj/src/xemacs): ld.so.1: ./temacs:
177 fatal: /space/rpluim/xemacs-obj/src/xemacs: unknown dynamic entry:
178 1879048176
179
180 are caused by using GNU ld. There are several workarounds available:
181
182 In XEmacs 21.2 or later, configure using the new portable dumper
183 (--pdump).
184
185 Alternatively, you can link using the Sun version of ld, which is
186 normally held in /usr/ccs/bin. This can be done by one of:
187
188 - building gcc with these configure flags:
189 configure --with-ld=/usr/ccs/bin/ld --with-as=/usr/ccs/bin/as
190
191 - adding -B/usr/ccs/bin/ to CFLAGS used to configure XEmacs
192 (Note: The trailing '/' there is significant.)
193
194 - uninstalling GNU ld.
195
196 The Solaris2 FAQ claims:
197
198 When you install gcc, don't make the mistake of installing
199 GNU binutils or GNU libc, they are not as capable as their
200 counterparts you get with Solaris 2.x.
201
202 *** Link failure when using acc on a Sun.
203
204 To use acc, you need additional options just before the libraries, such as
205
206 /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
207
208 and you need to add -lansi just before -lc.
209
210 The precise file names depend on the compiler version, so we
211 cannot easily arrange to supply them.
212
213 *** Problems finding X11 libraries on Solaris with Openwindows
214
215 Some users have reported problems in this area. The reported solution
216 is to define the environment variable OPENWINHOME, even if you must set
217 it to `/usr/openwin'.
218
219 *** Sed problems on Solaris 2.5
220 77
221 There have been reports of Sun sed truncating very lines in the 78 There have been reports of Sun sed truncating very lines in the
222 Makefile during configuration. The workaround is to use GNU sed or, 79 Makefile during configuration. The workaround is to use GNU sed or,
223 even better, think of a better way to generate Makefile, and send us a 80 even better, think of a better way to generate Makefile, and send us a
224 patch. :-) 81 patch. :-)
225 82
226 *** On Solaris 2 I get undefined symbols from libcurses.a. 83 ** test-distrib says that the distribution has been clobbered
227 84 or, temacs prints "Command key out of range 0-127"
228 You probably have /usr/ucblib/ on your LD_LIBRARY_PATH. Do the link with 85 or, temacs runs and dumps xemacs, but xemacs totally fails to work.
229 LD_LIBRARY_PATH unset. Generally, avoid using any ucb* stuff when 86 or, temacs gets errors dumping xemacs
230 building XEmacs. 87
231 88 This can be because the .elc files have been garbled. Do not be
232 *** On Solaris 2 I cannot make alloc.o, glyphs.o or process.o. 89 fooled by the fact that most of a .elc file is text: these are binary
233 90 files and can contain all 256 byte values.
234 The SparcWorks C compiler may have difficulty building those modules 91
235 with optimization level -xO4. Try using only "-fast" optimization 92 In particular `shar' cannot be used for transmitting GNU Emacs. It
236 for just those modules. (Or use gcc). 93 typically truncates "lines". (this does not apply to GNU shar, which
237 94 uses uuencode to encode binary files.)
238 *** Solaris 2.3 /bin/sh coredumps during configuration. 95
239 96 If you have a copy of Emacs that has been damaged in its nonprinting
240 This only occurs if you have LANG != C. This is a known bug with 97 characters, you can fix them by running:
241 /bin/sh fixed by installing Patch-ID# 101613-01. Or, you can use 98
242 bash, as a workaround. 99 make all-elc
243 100
244 *** On SunOS, you get linker errors 101 This will rebuild all the needed .elc files.
245 ld: Undefined symbol 102
246 _get_wmShellWidgetClass 103 ** `Error: No ExtNode to pop!' on Linux systems with Lesstif.
247 _get_applicationShellWidgetClass
248
249 The fix to this is to install patch 100573 for OpenWindows 3.0
250 or link libXmu statically.
251
252 *** On Sunos 4, you get the error ld: Undefined symbol __lib_version.
253
254 This is the result of using cc or gcc with the shared library meant
255 for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete
256 /usr/lang/SC2.0.1 or some similar directory.
257
258 *** Undefined symbols when linking on Sunos 4.1.
259
260 If you get the undefined symbols _atowc _wcslen, _iswprint, _iswspace,
261 _iswcntrl, _wcscpy, and _wcsncpy, then you need to add -lXwchar after
262 -lXaw in the command that links temacs.
263
264 This problem seems to arise only when the international language
265 extensions to X11R5 are installed.
266
267 *** On a Sun running SunOS 4.1.1, you get this error message from GNU ld:
268
269 /lib/libc.a(_Q_sub.o): Undefined symbol __Q_get_rp_rd referenced from text segment
270
271 The problem is in the Sun shared C library, not in GNU ld.
272
273 The solution is to install Patch-ID# 100267-03 from Sun.
274
275 *** SunOS 4.1.2: undefined symbol _get_wmShellWidgetClass
276
277 Apparently the version of libXmu.so.a that Sun ships is hosed: it's missing
278 some stuff that is in libXmu.a (the static version). Sun has a patch for
279 this, but a workaround is to use the static version of libXmu, by changing
280 the link command from "-lXmu" to "-Bstatic -lXmu -Bdynamic". If you have
281 OpenWindows 3.0, ask Sun for these patches:
282 100512-02 4.1.x OpenWindows 3.0 libXt Jumbo patch
283 100573-03 4.1.x OpenWindows 3.0 undefined symbols with shared libXmu
284
285 *** Random other SunOS 4.1.[12] link errors.
286
287 The X headers and libraries that Sun ships in /usr/{include,lib}/X11 are
288 broken. Use the ones in /usr/openwin/{include,lib} instead.
289
290 ** Linux
291 *** Under Linux, you get "too many arguments to function `getpgrp'".
292
293 You have probably installed LessTiff under `/usr/local' and `libXm.so'
294 could not be found when linking `getpgrp()' test program, making XEmacs
295 think that `getpgrp()' takes an argument. Try adding `/usr/local/lib'
296 in `/etc/ld.so.conf' and run `ldconfig'. Then run XEmacs's `configure'
297 again. As with all problems of this type, reading the config.log file
298 generated from configure and seeing the log of how the test failed can
299 prove enlightening.
300
301 *** `Error: No ExtNode to pop!' on Linux systems with Lesstif.
302 104
303 This error message has been observed with lesstif-0.75a. It does not 105 This error message has been observed with lesstif-0.75a. It does not
304 appear to cause any harm. 106 appear to cause any harm.
305 107
306 *** xemacs: can't resolve symbol '__malloc_hook' 108 ** Linking with -rpath on IRIX.
307
308 This is a Linux problem where you've compiled the XEmacs binary on a libc
309 5.4 with version higher than 5.4.19 and attempted to run the binary against
310 an earlier version. The solution is to upgrade your old library.
311
312 ** IRIX
313
314 *** On Irix 6.5, the MIPSpro compiler gets an internal compiler error
315
316 The MIPSpro Compiler (at least version 7.2.1) can't seem to handle the
317 union type properly, and fails to compile src/glyphs.c. To avoid this
318 problem, always build ---use-union-type=3Dno (but that's the default, so
319 you should only see this problem if you're an XEmacs maintainer).
320
321 *** Linking with -rpath on IRIX.
322 109
323 Darrell Kindred <dkindred@cmu.edu> writes: 110 Darrell Kindred <dkindred@cmu.edu> writes:
324 There are a couple of problems [with use of -rpath with Irix ld], though: 111 There are a couple of problems [with use of -rpath with Irix ld], though:
325 112
326 1. The ld in IRIX 5.3 ignores all but the last -rpath 113 1. The ld in IRIX 5.3 ignores all but the last -rpath
337 rather than quoting $LDFLAGS with prefix-args, like 124 rather than quoting $LDFLAGS with prefix-args, like
338 src/Makefile does. So if you specify --x-libraries 125 src/Makefile does. So if you specify --x-libraries
339 or --site-runtime-libraries, you must use --use-gcc=no, 126 or --site-runtime-libraries, you must use --use-gcc=no,
340 or configure will fail. 127 or configure will fail.
341 128
342 *** On Irix 6.3, the SGI ld quits with segmentation fault when linking temacs 129 ** On Irix 6.3, the SGI ld quits with segmentation fault when linking temacs
343 130
344 This occurs if you use the SGI linker version 7.1. Installing the 131 This occurs if you use the SGI linker version 7.1. Installing the
345 patch SG0001872 fixes this problem. 132 patch SG0001872 fixes this problem.
346 133
347 *** On Irix 6.0, make tries (and fails) to build a program named unexelfsgi 134 ** xemacs: can't resolve symbol '__malloc_hook'
348 135
349 A compiler bug inserts spaces into the string "unexelfsgi . o" 136 This is a Linux problem where you've compiled the XEmacs binary on a libc
350 in src/Makefile. Edit src/Makefile, after configure is run, 137 5.4 with version higher than 5.4.19 and attempted to run the binary against
351 find that string, and take out the spaces. 138 an earlier version. The solution is to upgrade your old library.
352 139
353 Compiler fixes in Irix 6.0.1 should eliminate this problem. 140 ** Compilation errors on VMS.
354 141
355 *** On Irix 5.2, unexelfsgi.c can't find cmplrs/stsupport.h. 142 Sorry, XEmacs does not work under VMS. You might consider working on
356 143 the port if you really want to have XEmacs work under VMS.
357 The file cmplrs/stsupport.h was included in the wrong file set in the 144
358 Irix 5.2 distribution. You can find it in the optional fileset 145 ** On Solaris 2 I get undefined symbols from libcurses.a.
359 compiler_dev, or copy it from some other Irix 5.2 system. A kludgy 146
360 workaround is to change unexelfsgi.c to include sym.h instead of 147 You probably have /usr/ucblib/ on your LD_LIBRARY_PATH. Do the link with
361 syms.h. 148 LD_LIBRARY_PATH unset. Generally, avoid using any ucb* stuff when
362 149 building XEmacs.
363 *** Coredumping in Irix 6.2 150
364 151 ** On Solaris 2 I cannot make alloc.o, glyphs.o or process.o.
365 Pete Forman <gsez020@compo.bedford.waii.com> writes: 152
366 A problem noted by myself and others (I've lost the references) was 153 The SparcWorks C compiler may have difficulty building those modules
367 that XEmacs coredumped when the cut or copy toolbar buttons were 154 with optimization level -xO4. Try using only "-fast" optimization
368 pressed. This has been fixed by loading the SGI patchset (Feb 98) 155 for just those modules. (Or use gcc).
369 without having to recompile XEmacs. 156
370 157 ** On Digital UNIX, the DEC C compiler might have a problem compiling
371 My versions are XEmacs 20.3 (problem first noted in 19.15) and IRIX
372 6.2, compiled using -n32. I'd guess that the relevant individual
373 patch was "SG0002580: multiple fixes for X libraries". SGI recommends
374 that the complete patch set be installed rather than parts of it.
375
376 ** Digital UNIX/OSF/VMS
377 *** On Digital UNIX, the DEC C compiler might have a problem compiling
378 some files. 158 some files.
379 159
380 In particular, src/extents.c and src/faces.c might cause the DEC C 160 In particular, src/extents.c and src/faces.c might cause the DEC C
381 compiler to abort. When this happens: cd src, compile the files by 161 compiler to abort. When this happens: cd src, compile the files by
382 hand, cd .., and redo the "make" command. When recompiling the files by 162 hand, cd .., and redo the "make" command. When recompiling the files by
385 - V4.n: Add "-oldc" to the compile command. 165 - V4.n: Add "-oldc" to the compile command.
386 166
387 A related compiler bug has been fixed by the DEC compiler team. The 167 A related compiler bug has been fixed by the DEC compiler team. The
388 new versions of the compiler should run fine. 168 new versions of the compiler should run fine.
389 169
390 *** Under some versions of OSF XEmacs runs fine if built without 170 ** On HPUX, the HP C compiler might have a problem compiling some files
391 optimization but will crash randomly if built with optimization.
392
393 Using 'cc -g' is not sufficient to eliminate all optimization. Try
394 'cc -g -O0' instead.
395
396 *** Compilation errors on VMS.
397
398 Sorry, XEmacs does not work under VMS. You might consider working on
399 the port if you really want to have XEmacs work under VMS.
400
401 ** HP-UX
402 *** On HPUX, the HP C compiler might have a problem compiling some files
403 with optimization. 171 with optimization.
404 172
405 Richard Cognot <cognot@ensg.u-nancy.fr> writes: 173 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
406 174
407 Had to drop once again to level 2 optimization, at least to 175 Had to drop once again to level 2 optimization, at least to
411 applying patches for the C compiler). Trouble is I still 179 applying patches for the C compiler). Trouble is I still
412 haven't found the same patch for hpux 10.10, and I don't 180 haven't found the same patch for hpux 10.10, and I don't
413 remember the patch numbers. I think potential XEmacs builders 181 remember the patch numbers. I think potential XEmacs builders
414 on HP should be warned about this. 182 on HP should be warned about this.
415 183
416 *** I don't have `xmkmf' and `imake' on my HP. 184 ** I don't have `xmkmf' and `imake' on my HP.
417 185
418 You can get these standard X tools by anonymous FTP to 186 You can get these standard X tools by anonymous FTP to
419 hpcvaaz.cv.hp.com. Essentially all X programs need these. 187 hpcvaaz.cv.hp.com. Essentially all X programs need these.
420 188
421 *** On HP-UX, problems with make 189 ** On HP-UX, problems with make
422 190
423 Marcus Thiessel <marcus@xemacs.org> 191 Marcus Thiessel <marcus_thiessel@hp.com>
424 192
425 Some releases of XEmacs (e.g. 20.4) require GNU make to build 193 Some releases of XEmacs (e.g. 20.4) require GNU make to build
426 successfully. You don't need GNU make when building 21.x. 194 successfully. You don't need GNU make when building 21.x.
427 195
428 *** On HP-UX 9.05 XEmacs won't compile or coredump during the build. 196 ** On HP-UX 9.05 XEmacs won't compile or coredump during the build.
429 197
430 Marcus Thiessel <marcus@xemacs.org> 198 Marcus Thiessel <marcus_thiessel@hp.com>
431 199
432 This might be a sed problem. For your own safety make sure to use 200 This might be a sed problem. For your own safety make sure to use
433 GNU sed while dumping XEmacs. 201 GNU sed while dumping XEmacs.
434 202
435 *** On HP-UX 11.0 XEmacs causes excessive X11 errors when running. 203 ** On HP-UX 11.0 XEmacs causes excessive X11 errors when running.
436 (also appears on AIX as reported in comp.emacs.xemacs) 204
437 205 Marcus Thiessel <marcus_thiessel@hp.com>
438 Marcus Thiessel <marcus@xemacs.org> 206
439 207 Unfortunately, XEmacs releases don't work with Motif2.1. It
440 Unfortunately, XEmacs releases prior to 21.0 don't work with 208 will compile but you will get excessive X11 errors like
441 Motif2.1. It will compile but you will get excessive X11 errors like
442 209
443 xemacs: X Error of failed request: BadGC (invalid GC parameter) 210 xemacs: X Error of failed request: BadGC (invalid GC parameter)
444 211
445 and finally XEmacs gets killed. A workaround is to use the 212 and finally XEmacs gets killed. A workaround is to use the
446 Motif1.2_R6 libraries. You can the following line to your call to 213 Motif1.2_R6 libraries. You can the following line to your call to
449 --x-libraries="/usr/lib/Motif1.2_R6 -L/usr/lib/X11R6" 216 --x-libraries="/usr/lib/Motif1.2_R6 -L/usr/lib/X11R6"
450 217
451 Make sure /usr/lib/Motif1.2_R6/libXm.sl is a link to 218 Make sure /usr/lib/Motif1.2_R6/libXm.sl is a link to
452 /usr/lib/Motif1.2_R6/libXm.3. 219 /usr/lib/Motif1.2_R6/libXm.3.
453 220
454 *** On HP-UX 11.0: Object "" does not have windowed ancestor 221 ** Solaris 2.3 /bin/sh coredumps during configuration.
455 222
456 Marcus Thiessel <marcus@xemacs.org> 223 This only occurs if you have LANG != C. This is a known bug with
457 224 /bin/sh fixed by installing Patch-ID# 101613-01. Or, you can use
458 XEmacs dies without core file and reports: 225 bash, as a workaround.
459 226
460 Error: Object "" does not have windowed ancestor. 227 ** On Irix 6.0, make tries (and fails) to build a program named unexelfsgi
461 228
462 This is a bug. Please apply the patch PHSS_19964 (check if 229 A compiler bug inserts spaces into the string "unexelfsgi . o"
463 superseded). The other alternative is to link with Motif1.2_R6 (see 230 in src/Makefile. Edit src/Makefile, after configure is run,
464 previous item). 231 find that string, and take out the spaces.
465 232
466 233 Compiler fixes in Irix 6.0.1 should eliminate this problem.
467 ** SCO OpenServer 234
468 *** Native cc on SCO OpenServer 5 is now OK. Icc may still throw you 235 ** Coredumping in Irix 6.2
236
237 Pete Forman <gsez020@compo.bedford.waii.com> writes:
238 A problem noted by myself and others (I've lost the references) was
239 that XEmacs coredumped when the cut or copy toolbar buttons were
240 pressed. This has been fixed by loading the SGI patchset (Feb 98)
241 without having to recompile XEmacs.
242
243 My versions are XEmacs 20.3 (problem first noted in 19.15) and IRIX
244 6.2, compiled using -n32. I'd guess that the relevant individual
245 patch was "SG0002580: multiple fixes for X libraries". SGI recommends
246 that the complete patch set be installed rather than parts of it.
247
248 ** Native cc on SCO OpenServer 5 is now OK. Icc may still throw you
469 a curve. Here is what Robert Lipe <robertl@arnet.com> says: 249 a curve. Here is what Robert Lipe <robertl@arnet.com> says:
470 250
471 Unlike XEmacs 19.13, building with the native cc on SCO OpenServer 5 251 Unlike XEmacs 19.13, building with the native cc on SCO OpenServer 5
472 now produces a functional binary. I will typically build this 252 now produces a functional binary. I will typically build this
473 configuration for COFF with: 253 configuration for COFF with:
527 In etc/ there are two files of note. emacskeys.sco and emacsstrs.sco. 307 In etc/ there are two files of note. emacskeys.sco and emacsstrs.sco.
528 The comments at the top of emacskeys.sco describe its function, and 308 The comments at the top of emacskeys.sco describe its function, and
529 the emacstrs.sco is a suitable candidate for /usr/lib/keyboard/strings 309 the emacstrs.sco is a suitable candidate for /usr/lib/keyboard/strings
530 to take advantage of the keyboard map in emacskeys.sco. 310 to take advantage of the keyboard map in emacskeys.sco.
531 311
532 Note: Much of the above entry is probably not valid for XEmacs 21.0 312 Note: Much of the above entry is probably not valid for XEmacs 21.2
533 and later. 313 and later.
534 314
535 ** Cygwin 315 ** Under some versions of OSF XEmacs runs fine if built without
536 *** In general use etc/check_cygwin_setup.sh to trap environment problems. 316 optimization but will crash randomly if built with optimization.
537 317
538 The script etc/check_cygwin_setup.sh will attempt to detect whether 318 Using 'cc -g' is not sufficient to eliminate all optimization. Try
539 you have a suitable environment for building. This script may not work 319 'cc -g -O0' instead.
540 correctly if you are using ash instead of bash (see below). 320
541 321 ** On SunOS, you get linker errors
542 *** X11 not detected. 322 ld: Undefined symbol
543 323 _get_wmShellWidgetClass
544 This is usually because xmkmf is not in your path or because you are 324 _get_applicationShellWidgetClass
545 using the default cygwin shell. The default cygwin shell (/bin/sh.exe) 325
546 is ash which appears to work in most circumstances but has some weird 326 The fix to this is to install patch 100573 for OpenWindows 3.0
547 failure modes. I recommend replacing sh.exe with bash.exe, this will 327 or link libXmu statically.
548 mean configure is slower but more reliable. 328
549 329 ** On Sunos 4, you get the error ld: Undefined symbol __lib_version.
550 *** Subprocesses do not work. 330
551 331 This is the result of using cc or gcc with the shared library meant
552 You do not have "tty" in your CYGWIN32 (for b19) or CYGWIN (for b20) 332 for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete
553 environment variable. This must be set in your autoexec.bat (win95) or 333 /usr/lang/SC2.0.1 or some similar directory.
554 the system properties (winnt) as it must be read before the cygwin dll 334
555 initializes. 335 ** On AIX 4.1.2, linker error messages such as
556 336 ld: 0711-212 SEVERE ERROR: Symbol .__quous, found in the global symbol table
557 *** ^G does not work on hung subprocesses. 337 of archive /usr/lib/libIM.a, was not defined in archive member shr.o.
558 338
559 This is a known problem. It can be remedied with cygwin b20 or greater 339 This is a problem in libIM.a. You can work around it by executing
560 by defining BROKEN_SIGIO in src/s/cygwin32.h, however this currently 340 these shell commands in the src subdirectory of the directory where
561 leads to instability in XEmacs. 341 you build Emacs:
562 342
563 *** The XEmacs executable crashes at startup. 343 cp /usr/lib/libIM.a .
564 344 chmod 664 libIM.a
565 This can be caused by many things. 345 ranlib libIM.a
566 346
567 If you are running with X11 you need to have cygwin b19 or cygwin 347 Then change -lIM to ./libIM.a in the command to link temacs (in
568 b20.1 or greater, cygwin b20 will not work. 348 Makefile).
569 349
570 If you are running with cygwin b19 make sure you are using egcs 1.0.2 350 ** On Irix 5.2, unexelfsgi.c can't find cmplrs/stsupport.h.
571 rather than vanilla gcc. XEmacs builds by default with -O3 which does 351
572 not work with the gcc that ships with b19. Alternatively use -O2. 352 The file cmplrs/stsupport.h was included in the wrong file set in the
573 353 Irix 5.2 distribution. You can find it in the optional fileset
574 *** The info files will not build. 354 compiler_dev, or copy it from some other Irix 5.2 system. A kludgy
575 355 workaround is to change unexelfsgi.c to include sym.h instead of
576 makeinfo that ships with cygwin (all versions) is a noop. You need to 356 syms.h.
577 obtain makeinfo from somewhere or build it yourself. 357
578 358 ** Link failure when using acc on a Sun.
579 *** I have no graphics. 359
580 360 To use acc, you need additional options just before the libraries, such as
581 You need to obtain the various graphics libraries. Pre-built versions 361
582 of these and the X libraries are located on the XEmacs website in 362 /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
583 ftp://ftp.xemacs.org/pub/aux/cygwin*. 363
584 364 and you need to add -lansi just before -lc.
585 *** There are no images in the toolbar buttons. 365
586 366 The precise file names depend on the compiler version, so we
587 You need version 4.71 of commctrl.dll which does not ship with windows 367 cannot easily arrange to supply them.
588 95. You can get this by installing IE 4.0 or downloading it from the 368
589 microsoft website. 369 ** Link failure on IBM AIX 1.3 ptf 0013.
590 370
591 371 There is a real duplicate definition of the function `_slibc_free' in
592 * Problems with running XEmacs 372 the library /lib/libc_s.a (just do nm on it to verify). The
593 ============================== 373 workaround/fix is:
594 ** General 374
595 *** C-z just refreshes the screen instead of suspending Emacs. 375 cd /lib
376 ar xv libc_s.a NLtmtime.o
377 ar dv libc_s.a NLtmtime.o
378
379 ** Undefined symbols when linking on Sunos 4.1.
380
381 If you get the undefined symbols _atowc _wcslen, _iswprint, _iswspace,
382 _iswcntrl, _wcscpy, and _wcsncpy, then you need to add -lXwchar after
383 -lXaw in the command that links temacs.
384
385 This problem seems to arise only when the international language
386 extensions to X11R5 are installed.
387
388 ** src/Makefile and lib-src/Makefile are truncated--most of the file missing.
389
390 This can happen if configure uses GNU sed version 2.03. That version
391 had a bug. GNU sed version 2.05 works properly.
392
393 ** On AIX, you get this compiler error message:
394
395 Processing include file ./XMenuInt.h
396 1501-106: (S) Include file X11/Xlib.h not found.
397
398 This means your system was installed with only the X11 runtime i.d
399 libraries. You have to find your sipo (bootable tape) and install
400 X11Dev... with smit.
401
402 ** C-z just refreshes the screen instead of suspending Emacs.
596 403
597 You are probably using a shell that doesn't support job control, even 404 You are probably using a shell that doesn't support job control, even
598 though the system itself is capable of it. Try using a different 405 though the system itself is capable of it. Try using a different
599 shell. 406 shell.
600 407
601 *** You type Control-H (Backspace) expecting to delete characters. 408 ** On a Sun running SunOS 4.1.1, you get this error message from GNU ld:
409
410 /lib/libc.a(_Q_sub.o): Undefined symbol __Q_get_rp_rd referenced from text segment
411
412 The problem is in the Sun shared C library, not in GNU ld.
413
414 The solution is to install Patch-ID# 100267-03 from Sun.
415
416 ** SunOS 4.1.2: undefined symbol _get_wmShellWidgetClass
417
418 Apparently the version of libXmu.so.a that Sun ships is hosed: it's missing
419 some stuff that is in libXmu.a (the static version). Sun has a patch for
420 this, but a workaround is to use the static version of libXmu, by changing
421 the link command from "-lXmu" to "-Bstatic -lXmu -Bdynamic". If you have
422 OpenWindows 3.0, ask Sun for these patches:
423 100512-02 4.1.x OpenWindows 3.0 libXt Jumbo patch
424 100573-03 4.1.x OpenWindows 3.0 undefined symbols with shared libXmu
425
426 ** Random other SunOS 4.1.[12] link errors.
427
428 The X headers and libraries that Sun ships in /usr/{include,lib}/X11 are
429 broken. Use the ones in /usr/openwin/{include,lib} instead.
430
431 ** When using gcc, you get the error message "undefined symbol __fixunsdfsi".
432 When using gcc, you get the error message "undefined symbol __main".
433
434 This means that you need to link with the gcc library. It may be called
435 "gcc-gnulib" or "libgcc.a"; figure out where it is, and define LIB_GCC in
436 config.h to point to it.
437
438 It may also work to use the GCC version of `ld' instead of the standard one.
439
440 ** When compiling with X11, you get "undefined symbol _XtStrings".
441
442 This means that you are trying to link emacs against the X11r4 version of
443 libXt.a, but you have compiled either Emacs or the code in the lwlib
444 subdirectory with the X11r5 header files. That doesn't work.
445
446 Remember, you can't compile lwlib for r4 and emacs for r5, or vice versa.
447 They must be in sync.
448
449 ** Problems finding X11 libraries on Solaris with Openwindows
450
451 Some users have reported problems in this area. The reported solution
452 is to define the environment variable OPENWINHOME, even if you must set
453 it to `/usr/openwin'.
454
455 ** Under Linux, you get "too many arguments to function `getpgrp'".
456
457 You have probably installed LessTiff under `/usr/local' and `libXm.so'
458 could not be found when linking `getpgrp()' test program, making XEmacs
459 think that `getpgrp()' takes an argument. Try adding `/usr/local/lib'
460 in `/etc/ld.so.conf' and run `ldconfig'. Then run XEmacs's `configure'
461 again. As with all problems of this type, reading the config.log file
462 generated from configure and seeing the log of how the test failed can
463 prove enlightening.
464
465
466 * Problems with running XEmacs
467 ==============================
468 ** On Solaris 2.6, XEmacs dumps core when exiting.
469
470 This happens if you're XEmacs is running on the same machine as the X
471 server, and the optimized memory transport has been turned on by
472 setting the environment variable XSUNTRANSPORT. The crash occurs
473 during the call to XCloseDisplay.
474
475 If this describes your situation, you need to undefine the
476 XSUNTRANSPORT environment variable.
477
478 ** `C-z', or `M-x suspend-emacs' hangs instead of suspending.
479
480 If you build with `gpm' support on Linux, you cannot suspend XEmacs
481 because gpm installs a buggy SIGTSTP handler. Either compile with
482 `--with-gpm=no', or don't suspend XEmacs on the Linux console until
483 this bug is fixed.
484
485 ** You type Control-H (Backspace) expecting to delete characters.
602 486
603 Emacs has traditionally used Control-H for help; unfortunately this 487 Emacs has traditionally used Control-H for help; unfortunately this
604 interferes with its use as Backspace on TTY's. As of XEmacs 21, 488 interferes with its use as Backspace on TTY's. One way to solve this
605 XEmacs looks at the "erase" setting of TTY structures and maps C-h to 489 problem is to put this in your .emacs:
606 backspace when erase is set to C-h. This is sort of a special hack, 490
607 but it makes it possible for you to use the standard: 491 (when (eq tty-erase-char ?\C-h)
608 492 (keyboard-translate ?\C-h ?\C-?)
609 stty erase ^H 493 (global-set-key "\M-?" 'help-command))
610 494
611 to get your backspace key to erase characters. The erase setting is 495 This checks whether the TTY erase char is C-h, and if it is, makes
612 recorded in the Lisp variable `tty-erase-char', which you can use to 496 Control-H (Backspace) work sensibly, and moves help to Meta-? (ESC ?).
613 tune the settings in your .emacs. 497
614 498 Note that you can probably also access help using F1.
615 A major drawback of this is that when C-h becomes backspace, it no 499
616 longer invokes help. In that case, you need to use f1 for help, or 500 ** Mail agents (VM, Gnus, rmail) cannot get new mail
617 bind another key. An example of the latter is the following code,
618 which moves help to Meta-? (ESC ?):
619
620 (global-set-key "\M-?" 'help-command)
621
622 *** Mail agents (VM, Gnus, rmail) cannot get new mail
623 501
624 rmail and VM get new mail from /usr/spool/mail/$USER using a program 502 rmail and VM get new mail from /usr/spool/mail/$USER using a program
625 called `movemail'. This program interlocks with /bin/mail using the 503 called `movemail'. This program interlocks with /bin/mail using the
626 protocol defined by /bin/mail. 504 protocol defined by /bin/mail.
627 505
647 installed copy of movemail is usually in the directory 525 installed copy of movemail is usually in the directory
648 /usr/local/lib/emacs/VERSION/TARGET. You must change the group and 526 /usr/local/lib/emacs/VERSION/TARGET. You must change the group and
649 mode of the installed copy; changing the group and mode of the build 527 mode of the installed copy; changing the group and mode of the build
650 directory copy is ineffective. 528 directory copy is ineffective.
651 529
652 *** VM appears to hang in large folders. 530 ** XEmacs crashes on Digital Unix within font-lock, or when dealing
531 with large compilation buffers.
532
533 The default stack size under Digital Unix is rather small (2M as
534 opposed to Solaris 8M), hosing the regexp code, which uses alloca()
535 extensively, overflowing the stack when complex regexps are used.
536 Workarounds:
537
538 1) Increase your stack size, using `ulimit -s 8192' or a (t)csh
539 equivalent;
540
541 2) Recompile regex.c with REGEX_MALLOC defined.
542
543 ** On Solaris, C-x doesn't get through to Emacs when you use the console.
544
545 This is a Solaris feature (at least on Intel x86 cpus). Type C-r
546 C-r C-t, to toggle whether C-x gets through to Emacs.
547
548 ** VM appears to hang in large folders.
653 549
654 This is normal (trust us) when upgrading to VM-6.22 from earlier 550 This is normal (trust us) when upgrading to VM-6.22 from earlier
655 versions. Let VM finish what it is doing and all will be well. 551 versions. Let VM finish what it is doing and all will be well.
656 552
657 *** Changes made to .el files do not take effect. 553 ** Changes made to .el files do not take effect.
658 554
659 You may have forgotten to recompile them into .elc files. Then the 555 You may have forgotten to recompile them into .elc files. Then the
660 old .elc files will be loaded, and your changes will not be seen. To 556 old .elc files will be loaded, and your changes will not be seen. To
661 fix this, do `M-x byte-recompile-directory' and specify the directory 557 fix this, do `M-x byte-recompile-directory' and specify the directory
662 that contains the Lisp files. 558 that contains the Lisp files.
663 559
664 Note that you will get a warning when loading a .elc file that is 560 Note that you will get a warning when loading a .elc file that is
665 older than the corresponding .el file. 561 older than the corresponding .el file.
666 562
667 *** Things which should be bold or italic (such as the initial 563 ** Things which should be bold or italic (such as the initial
668 copyright notice) are not. 564 copyright notice) are not.
669 565
670 The fonts of the "bold" and "italic" faces are generated from the font 566 The fonts of the "bold" and "italic" faces are generated from the font
671 of the "default" face; in this way, your bold and italic fonts will 567 of the "default" face; in this way, your bold and italic fonts will
672 have the appropriate size and family. However, emacs can only be 568 have the appropriate size and family. However, emacs can only be
685 then emacs won't be able to guess the names of the "bold" and "italic" 581 then emacs won't be able to guess the names of the "bold" and "italic"
686 versions. All X fonts can be referred to via XLFD-style names, so you 582 versions. All X fonts can be referred to via XLFD-style names, so you
687 should use those forms. See the man pages for X(1), xlsfonts(1), and 583 should use those forms. See the man pages for X(1), xlsfonts(1), and
688 xfontsel(1). 584 xfontsel(1).
689 585
690 *** The dumped Emacs crashes when run, trying to write pure data. 586 ** The dumped Emacs crashes when run, trying to write pure data.
691 587
692 Two causes have been seen for such problems. 588 Two causes have been seen for such problems.
693 589
694 1) On a system where getpagesize is not a system call, it is defined 590 1) On a system where getpagesize is not a system call, it is defined
695 as a macro. If the definition (in both unexec.c and malloc.c) is wrong, 591 as a macro. If the definition (in both unexec.c and malloc.c) is wrong,
700 initialized variables. Emacs makes all initialized variables in most 596 initialized variables. Emacs makes all initialized variables in most
701 of its files pure after dumping, but the variables declared static and 597 of its files pure after dumping, but the variables declared static and
702 not initialized are not supposed to be pure. On these systems you 598 not initialized are not supposed to be pure. On these systems you
703 may need to add "#define static" to the m- or the s- file. 599 may need to add "#define static" to the m- or the s- file.
704 600
705 *** Reading and writing files is very very slow. 601 ** Reading and writing files is very very slow.
706 602
707 Try evaluating the form (setq lock-directory nil) and see if that helps. 603 Try evaluating the form (setq lock-directory nil) and see if that helps.
708 There is a problem with file-locking on some systems (possibly related 604 There is a problem with file-locking on some systems (possibly related
709 to NFS) that I don't understand. Please send mail to the address 605 to NFS) that I don't understand. Please send mail to the address
710 xemacs@xemacs.org if you figure this one out. 606 xemacs@xemacs.org if you figure this one out.
711 607
712 *** When emacs starts up, I get lots of warnings about unknown keysyms. 608 ** The Emacs window disappears when you type M-q.
609
610 Some versions of the Open Look window manager interpret M-q as a quit
611 command for whatever window you are typing at. If you want to use
612 Emacs with that window manager, you should try to configure the window
613 manager to use some other command. You can disable the
614 shortcut keys entirely by adding this line to ~/.OWdefaults:
615
616 OpenWindows.WindowMenuAccelerators: False
617
618 ** The `Alt' key doesn't behave as `Meta' when running DECwindows.
619
620 The default DEC keyboard mapping has the Alt keys set up to generate the
621 keysym `Multi_key', which has a meaning to xemacs which is distinct from that
622 of the `Meta_L' and `Meta-R' keysyms. A second problem is that certain keys
623 have the Mod2 modifier attached to them for no adequately explored reason.
624 The correct fix is to pass this file to xmodmap upon starting X:
625
626 clear mod2
627 keysym Multi_key = Alt_L
628 add mod1 = Alt_L
629 add mod1 = Alt_R
630
631 ** The Compose key on a DEC keyboard does not work as Meta key.
632
633 This shell command should fix it:
634
635 xmodmap -e 'keycode 0xb1 = Meta_L'
636
637 ** When emacs starts up, I get lots of warnings about unknown keysyms.
713 638
714 If you are running the prebuilt binaries, the Motif library expects to find 639 If you are running the prebuilt binaries, the Motif library expects to find
715 certain thing in the XKeysymDB file. This file is normally in /usr/lib/X11/ 640 certain thing in the XKeysymDB file. This file is normally in /usr/lib/X11/
716 or in /usr/openwin/lib/. If you keep yours in a different place, set the 641 or in /usr/openwin/lib/. If you keep yours in a different place, set the
717 environment variable $XKEYSYMDB to point to it before starting emacs. If 642 environment variable $XKEYSYMDB to point to it before starting emacs. If
718 you still have the problem after doing that, perhaps your version of X is 643 you still have the problem after doing that, perhaps your version of X is
719 too old. There is a copy of the MIT X11R5 XKeysymDB file in the emacs `etc' 644 too old. There is a copy of the MIT X11R5 XKeysymDB file in the emacs `etc'
720 directory. Try using that one. 645 directory. Try using that one.
721 646
722 *** My X resources used to work, and now some of them are being ignored. 647 ** My X resources used to work, and now some of them are being ignored.
723 648
724 Check the resources in .../etc/Emacs.ad (which is the same as the file 649 Check the resources in .../etc/Emacs.ad (which is the same as the file
725 sample.Xdefaults). Perhaps some of the default resources built in to 650 sample.Xdefaults). Perhaps some of the default resources built in to
726 emacs are now overriding your existing resources. Copy and edit the 651 emacs are now overriding your existing resources. Copy and edit the
727 resources in Emacs.ad as necessary. 652 resources in Emacs.ad as necessary.
728 653
729 *** I have focus problems when I use `M-o' to switch to another screen 654 ** I get complaints about the mapping of my HP keyboard at startup,
655 but I haven't changed anything.
656
657 The default HP keymap is set up to have Mod1 assigned to two different keys:
658 Meta_L and Mode_switch (even though there is not actually a Mode_switch key on
659 the keyboard -- it uses an "imaginary" keycode.) There actually is a reason
660 for this, but it's not a good one. The correct fix is to execute this command
661 upon starting X:
662
663 xmodmap -e 'remove mod1 = Mode_switch'
664
665 ** I have focus problems when I use `M-o' to switch to another screen
730 without using the mouse. 666 without using the mouse.
731 667
732 The focus issues with a program like XEmacs, which has multiple 668 The focus issues with a program like XEmacs, which has multiple
733 homogeneous top-level windows, are very complicated, and as a result, 669 homogeneous top-level windows, are very complicated, and as a result,
734 most window managers don't implement them correctly. 670 most window managers don't implement them correctly.
749 (Many people suggest that XEmacs should warp the mouse when focusing 685 (Many people suggest that XEmacs should warp the mouse when focusing
750 on another screen in point-to-type mode. This is not ICCCM-compliant 686 on another screen in point-to-type mode. This is not ICCCM-compliant
751 behavior. Implementing such policy is the responsibility of the 687 behavior. Implementing such policy is the responsibility of the
752 window manager itself, it is not legal for a client to do this.) 688 window manager itself, it is not legal for a client to do this.)
753 689
754 *** Emacs spontaneously displays "I-search: " at the bottom of the screen. 690 ** Emacs spontaneously displays "I-search: " at the bottom of the screen.
755 691
756 This means that Control-S/Control-Q (XON/XOFF) "flow control" is being 692 This means that Control-S/Control-Q (XON/XOFF) "flow control" is being
757 used. C-s/C-q flow control is bad for Emacs editors because it takes 693 used. C-s/C-q flow control is bad for Emacs editors because it takes
758 away C-s and C-q as user commands. Since editors do not output long 694 away C-s and C-q as user commands. Since editors do not output long
759 streams of text without user commands, there is no need for a 695 streams of text without user commands, there is no need for a
833 widespread, XON/XOFF seems to be on the way out. If you can get some 769 widespread, XON/XOFF seems to be on the way out. If you can get some
834 use out of GNU Emacs on inferior terminals, more power to you, but I 770 use out of GNU Emacs on inferior terminals, more power to you, but I
835 will not make Emacs worse for properly designed systems for the sake 771 will not make Emacs worse for properly designed systems for the sake
836 of inferior systems. 772 of inferior systems.
837 773
838 *** Control-S and Control-Q commands are ignored completely. 774 ** Control-S and Control-Q commands are ignored completely.
839 775
840 For some reason, your system is using brain-damaged C-s/C-q flow 776 For some reason, your system is using brain-damaged C-s/C-q flow
841 control despite Emacs's attempts to turn it off. Perhaps your 777 control despite Emacs's attempts to turn it off. Perhaps your
842 terminal is connected to the computer through a concentrator 778 terminal is connected to the computer through a concentrator
843 that wants to use flow control. 779 that wants to use flow control.
848 784
849 If that line of approach is not successful, map some other characters 785 If that line of approach is not successful, map some other characters
850 into C-s and C-q using keyboard-translate-table. The example above 786 into C-s and C-q using keyboard-translate-table. The example above
851 shows how to do this with C-^ and C-\. 787 shows how to do this with C-^ and C-\.
852 788
853 *** Control-S and Control-Q commands are ignored completely on a net 789 ** Control-S and Control-Q commands are ignored completely on a net
854 connection. 790 connection.
855 791
856 Some versions of rlogin (and possibly telnet) do not pass flow 792 Some versions of rlogin (and possibly telnet) do not pass flow
857 control characters to the remote system to which they connect. 793 control characters to the remote system to which they connect.
858 On such systems, emacs on the remote system cannot disable flow 794 On such systems, emacs on the remote system cannot disable flow
875 (enable-flow-control-on "vt200" "vt300" "vt101" "vt131") 811 (enable-flow-control-on "vt200" "vt300" "vt101" "vt131")
876 812
877 See the entry about spontaneous display of I-search (above) for more 813 See the entry about spontaneous display of I-search (above) for more
878 info. 814 info.
879 815
880 *** TTY redisplay is slow. 816 ** TTY redisplay is slow.
881 817
882 XEmacs has fairly new TTY redisplay support (beginning from 19.12), 818 XEmacs has fairly new TTY redisplay support (beginning from 19.12),
883 which doesn't include some basic TTY optimizations -- like using 819 which doesn't include some basic TTY optimizations -- like using
884 scrolling regions to move around blocks of text. This is why 820 scrolling regions to move around blocks of text. This is why
885 redisplay on the traditional terminals, or over slow lines can be very 821 redisplay on the traditional terminals, or over slow lines can be very
886 slow. 822 slow.
887 823
888 If you are interested in fixing this, please let us know at 824 If you are interested in fixing this, please let us know at
889 <xemacs@xemacs.org>. 825 <xemacs@xemacs.org>.
890 826
891 *** Screen is updated wrong, but only on one kind of terminal. 827 ** Screen is updated wrong, but only on one kind of terminal.
892 828
893 This could mean that the termcap entry you are using for that terminal 829 This could mean that the termcap entry you are using for that terminal
894 is wrong, or it could mean that Emacs has a bug handing the 830 is wrong, or it could mean that Emacs has a bug handing the
895 combination of features specified for that terminal. 831 combination of features specified for that terminal.
896 832
925 861
926 This is unambiguously an Emacs bug, and can probably be fixed in 862 This is unambiguously an Emacs bug, and can probably be fixed in
927 termcap.c, terminfo.c, tparam.c, cm.c, redisplay-tty.c, 863 termcap.c, terminfo.c, tparam.c, cm.c, redisplay-tty.c,
928 redisplay-output.c, or redisplay.c. 864 redisplay-output.c, or redisplay.c.
929 865
930 *** My buffers are full of \000 characters or otherwise corrupt. 866 ** Your Delete key sends a Backspace to the terminal, using an AIXterm.
931
932 Some compilers have trouble with gmalloc.c and ralloc.c; try recompiling
933 without optimization. If that doesn't work, try recompiling with
934 SYSTEM_MALLOC defined, and/or with REL_ALLOC undefined.
935
936 *** A position you specified in .Xdefaults is ignored, using twm.
937
938 twm normally ignores "program-specified" positions.
939 You can tell it to obey them with this command in your `.twmrc' file:
940
941 UsePPosition "on" #allow clents to request a position
942
943 *** With M-x enable-flow-control, you need to type C-\ twice to do
944 incremental search--a single C-\ gets no response.
945
946 This has been traced to communicating with your machine via kermit,
947 with C-\ as the kermit escape character. One solution is to use
948 another escape character in kermit. One user did
949
950 set escape-character 17
951
952 in his .kermrc file, to make C-q the kermit escape character.
953
954 *** The Motif version of Emacs paints the screen a solid color.
955
956 This has been observed to result from the following X resource:
957
958 Emacs*default.attributeFont: -*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*
959
960 That the resource has this effect indicates a bug in something, but we
961 do not yet know what. If it is an Emacs bug, we hope someone can
962 explain what the bug is so we can fix it. In the mean time, removing
963 the resource prevents the problem.
964
965 *** After running emacs once, subsequent invocations crash.
966
967 Some versions of SVR4 have a serious bug in the implementation of the
968 mmap () system call in the kernel; this causes emacs to run correctly
969 the first time, and then crash when run a second time.
970
971 Contact your vendor and ask for the mmap bug fix; in the mean time,
972 you may be able to work around the problem by adding a line to your
973 operating system description file (whose name is reported by the
974 configure script) that reads:
975 #define SYSTEM_MALLOC
976 This makes Emacs use memory less efficiently, but seems to work around
977 the kernel bug.
978
979 *** Inability to send an Alt-modified key, when Emacs is communicating
980 directly with an X server.
981
982 If you have tried to bind an Alt-modified key as a command, and it
983 does not work to type the command, the first thing you should check is
984 whether the key is getting through to Emacs. To do this, type C-h c
985 followed by the Alt-modified key. C-h c should say what kind of event
986 it read. If it says it read an Alt-modified key, then make sure you
987 have made the key binding correctly.
988
989 If C-h c reports an event that doesn't have the Alt modifier, it may
990 be because your X server has no key for the Alt modifier. The X
991 server that comes from MIT does not set up the Alt modifier by
992 default.
993
994 If your keyboard has keys named Alt, you can enable them as follows:
995
996 xmodmap -e 'add mod2 = Alt_L'
997 xmodmap -e 'add mod2 = Alt_R'
998
999 If the keyboard has just one key named Alt, then only one of those
1000 commands is needed. The modifier `mod2' is a reasonable choice if you
1001 are using an unmodified MIT version of X. Otherwise, choose any
1002 modifier bit not otherwise used.
1003
1004 If your keyboard does not have keys named Alt, you can use some other
1005 keys. Use the keysym command in xmodmap to turn a function key (or
1006 some other 'spare' key) into Alt_L or into Alt_R, and then use the
1007 commands show above to make them modifier keys.
1008
1009 Note that if you have Alt keys but no Meta keys, Emacs translates Alt
1010 into Meta. This is because of the great importance of Meta in Emacs.
1011
1012 *** In Shell mode, you get a ^M at the end of every line.
1013
1014 This happens to people who use tcsh, because it is trying to be too
1015 smart. It sees that the Shell uses terminal type `unknown' and turns
1016 on the flag to output ^M at the end of each line. You can fix the
1017 problem by adding this to your .cshrc file:
1018
1019 if ($?EMACS) then
1020 if ($EMACS == "t") then
1021 unset edit
1022 stty -icrnl -onlcr -echo susp ^Z
1023 endif
1024 endif
1025
1026 *** An error message such as `X protocol error: BadMatch (invalid
1027 parameter attributes) on protocol request 93'.
1028
1029 This comes from having an invalid X resource, such as
1030 emacs*Cursor: black
1031 (which is invalid because it specifies a color name for something
1032 that isn't a color.)
1033
1034 The fix is to correct your X resources.
1035
1036 *** Once you pull down a menu from the menubar, it won't go away.
1037
1038 It has been claimed that this is caused by a bug in certain very old
1039 (1990?) versions of the twm window manager. It doesn't happen with
1040 recent vintages, or with other window managers.
1041
1042 *** Emacs ignores the "help" key when running OLWM.
1043
1044 OLWM grabs the help key, and retransmits it to the appropriate client
1045 using XSendEvent. Allowing emacs to react to synthetic events is a
1046 security hole, so this is turned off by default. You can enable it by
1047 setting the variable x-allow-sendevents to t. You can also cause fix
1048 this by telling OLWM to not grab the help key, with the null binding
1049 "OpenWindows.KeyboardCommand.Help:".
1050
1051 *** Programs running under terminal emulator do not recognize `emacs'
1052 terminal type.
1053
1054 The cause of this is a shell startup file that sets the TERMCAP
1055 environment variable. The terminal emulator uses that variable to
1056 provide the information on the special terminal type that Emacs
1057 emulates.
1058
1059 Rewrite your shell startup file so that it does not change TERMCAP
1060 in such a case. You could use the following conditional which sets
1061 it only if it is undefined.
1062
1063 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file
1064
1065 Or you could set TERMCAP only when you set TERM--which should not
1066 happen in a non-login shell.
1067
1068 *** The popup menu appears at the bottom/right of my screen.
1069
1070 You probably have something like the following in your ~/.Xdefaults
1071
1072 Emacs.geometry: 81x56--9--1
1073
1074 Use the following instead
1075
1076 Emacs*EmacsFrame.geometry: 81x56--9--1
1077
1078
1079 ** AIX
1080 *** Your Delete key sends a Backspace to the terminal, using an AIXterm.
1081 867
1082 The solution is to include in your .Xdefaults the lines: 868 The solution is to include in your .Xdefaults the lines:
1083 869
1084 *aixterm.Translations: #override <Key>BackSpace: string(0x7f) 870 *aixterm.Translations: #override <Key>BackSpace: string(0x7f)
1085 aixterm*ttyModes: erase ^? 871 aixterm*ttyModes: erase ^?
1086 872
1087 This makes your Backspace key send DEL (ASCII 127). 873 This makes your Backspace key send DEL (ASCII 127).
1088 874
1089 *** On AIX 4, some programs fail when run in a Shell buffer 875 ** With certain fonts, when the cursor appears on a character, the
1090 with an error message like No terminfo entry for "unknown". 876 character doesn't appear--you get a solid box instead.
1091 877
1092 On AIX, many terminal type definitions are not installed by default. 878 One user on a Linux system reported that this problem went away with
1093 `unknown' is one of them. Install the "Special Generic Terminal 879 installation of a new X server. The failing server was XFree86 3.1.1.
1094 Definitions" to make them defined. 880 XFree86 3.1.2 works.
1095 881
1096 *** On AIX, you get this message when running Emacs: 882 ** On SunOS 4.1.3, Emacs unpredictably crashes in _yp_dobind_soft.
1097 883
1098 Could not load program emacs 884 This happens if you configure Emacs specifying just `sparc-sun-sunos4'
1099 Symbol smtcheckinit in csh is undefined 885 on a system that is version 4.1.3. You must specify the precise
1100 Error was: Exec format error 886 version number (or let configure figure out the configuration, which
1101 887 it can do perfectly well for SunOS).
1102 or this one: 888
1103 889 ** On Irix, I don't see the toolbar icons and I'm getting lots of
1104 Could not load program .emacs 890 entries in the warnings buffer.
1105 Symbol _system_con in csh is undefined 891
1106 Symbol _fp_trapsta in csh is undefined 892 SGI ships a really old Xpm library in /usr/lib which does not work at
1107 Error was: Exec format error 893 all well with XEmacs. The solution is to install your own copy of the
1108 894 latest version of Xpm somewhere and then use the --site-includes and
1109 These can happen when you try to run on AIX 3.2.5 a program that was 895 --site-libraries flags to tell configure where to find it.
1110 compiled with 3.2.4. The fix is to recompile. 896
1111 897 ** On HPUX, you get "poll: Interrupted system call" message in the
1112 *** Trouble using ptys on AIX. 898 window where XEmacs was launched.
1113 899
1114 People often install the pty devices on AIX incorrectly. 900 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
1115 Use `smit pty' to reinstall them properly. 901
1116 902 I get a very strange problem when linking libc.a dynamically: every
1117 903 event (mouse, keyboard, expose...) results in a "poll: Interrupted
1118 ** SunOS/Solaris 904 system call" message in the window where XEmacs was
1119 *** The Emacs window disappears when you type M-q. 905 launched. Forcing a static link of libc.a alone by adding
1120 906 /usr/lib/libc.a at the end of the link line solves this. Note that
1121 Some versions of the Open Look window manager interpret M-q as a quit 907 my 9.07 build of 19.14b17 and my (old) build of 19.13 both exhibit
1122 command for whatever window you are typing at. If you want to use 908 the same behaviour. I've tried various hpux patches to no avail. If
1123 Emacs with that window manager, you should try to configure the window 909 this problem cannot be solved before the release date, binary kits
1124 manager to use some other command. You can disable the 910 for HP *must* be linked statically against libc, otherwise this
1125 shortcut keys entirely by adding this line to ~/.OWdefaults: 911 problem will show up. (This is directed at whoever will volunteer
1126 912 for this kit, as I won't be available to do it, unless 19.14 gets
1127 OpenWindows.WindowMenuAccelerators: False 913 delayed until mid-june ;-). I think this problem will be an FAQ soon
1128 914 after the release otherwise.
1129 *** When Emacs tries to ring the bell, you get an error like 915
916 Note: The above entry is probably not valid for XEmacs 21.2 and
917 later.
918
919 ** When Emacs tries to ring the bell, you get an error like
1130 920
1131 audio: sst_open: SETQSIZE" Invalid argument 921 audio: sst_open: SETQSIZE" Invalid argument
1132 audio: sst_close: SETREG MMR2, Invalid argument 922 audio: sst_close: SETREG MMR2, Invalid argument
1133 923
1134 you have probably compiled using an ANSI C compiler, but with non-ANSI 924 you have probably compiled using an ANSI C compiler, but with non-ANSI
1140 workaround for this problem. Lucid's C compiler is shipped with a new 930 workaround for this problem. Lucid's C compiler is shipped with a new
1141 set of system include files. If you are using GCC, there is a script 931 set of system include files. If you are using GCC, there is a script
1142 called fixincludes that creates new versions of some system include 932 called fixincludes that creates new versions of some system include
1143 files that use this obsolete feature. 933 files that use this obsolete feature.
1144 934
1145 *** On Solaris 2.6, XEmacs dumps core when exiting. 935 ** My buffers are full of \000 characters or otherwise corrupt.
1146 936
1147 This happens if you're XEmacs is running on the same machine as the X 937 Some compilers have trouble with gmalloc.c and ralloc.c; try recompiling
1148 server, and the optimized memory transport has been turned on by 938 without optimization. If that doesn't work, try recompiling with
1149 setting the environment variable XSUNTRANSPORT. The crash occurs 939 SYSTEM_MALLOC defined, and/or with REL_ALLOC undefined.
1150 during the call to XCloseDisplay. 940
1151 941 ** On AIX 4, some programs fail when run in a Shell buffer
1152 If this describes your situation, you need to undefine the 942 with an error message like No terminfo entry for "unknown".
1153 XSUNTRANSPORT environment variable. 943
1154 944 On AIX, many terminal type definitions are not installed by default.
1155 *** On Solaris, C-x doesn't get through to Emacs when you use the console. 945 `unknown' is one of them. Install the "Special Generic Terminal
1156 946 Definitions" to make them defined.
1157 This is a Solaris feature (at least on Intel x86 cpus). Type C-r 947
1158 C-r C-t, to toggle whether C-x gets through to Emacs. 948 ** Emacs exits with "X protocol error" when run with an X server for
1159 949 Windows.
1160 *** On Solaris 2.4, Dired hangs and C-g does not work. Or Emacs hangs 950
951 A certain X server for Windows had a bug which caused this.
952 Supposedly the newer 32-bit version of this server doesn't have the
953 problem.
954
955 ** A position you specified in .Xdefaults is ignored, using twm.
956
957 twm normally ignores "program-specified" positions.
958 You can tell it to obey them with this command in your `.twmrc' file:
959
960 UsePPosition "on" #allow clents to request a position
961
962 ** The right Alt key works wrong on German HP keyboards (and perhaps
963 other non-English HP keyboards too).
964
965 This is because HPUX defines the modifiers wrong in X. Here is a
966 shell script to fix the problem; be sure that it is run after VUE
967 configures the X server.
968
969 xmodmap 2> /dev/null - << EOF
970 keysym Alt_L = Meta_L
971 keysym Alt_R = Meta_R
972 EOF
973
974 xmodmap - << EOF
975 clear mod1
976 keysym Mode_switch = NoSymbol
977 add mod1 = Meta_L
978 keysym Meta_R = Mode_switch
979 add mod2 = Mode_switch
980 EOF
981
982 ** Trouble using ptys on IRIX, or running out of ptys.
983
984 The program mkpts (which may be in `/usr/adm' or `/usr/sbin') needs to
985 be set-UID to root, or non-root programs like Emacs will not be able
986 to allocate ptys reliably.
987
988 ** Motif dialog boxes lose on Irix.
989
990 Larry Auton <lda@control.att.com> writes:
991 Beware of not specifying
992
993 --with-dialogs=athena
994
995 if it builds with the motif dialogs [boom!] you're a dead man.
996
997 ** Beware of the default image & graphics library on Irix
998
999 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
1000 You *have* to compile your own jpeg lib. The one delivered with SGI
1001 systems is a C++ lib, which apparently XEmacs cannot cope with.
1002
1003 ** Slow startup on Linux.
1004
1005 People using systems based on the Linux kernel sometimes report that
1006 startup takes 10 to 15 seconds longer than `usual'.
1007
1008 This is because Emacs looks up the host name when it starts.
1009 Normally, this takes negligible time; the extra delay is due to
1010 improper system configuration. This problem can occur for both
1011 networked and non-networked machines.
1012
1013 Here is how to fix the configuration. It requires being root.
1014
1015 *** Networked Case
1016
1017 First, make sure the files `/etc/hosts' and `/etc/host.conf' both
1018 exist. The first line in the `/etc/hosts' file should look like this
1019 (replace HOSTNAME with your host name):
1020
1021 127.0.0.1 localhost HOSTNAME
1022
1023 Also make sure that the `/etc/host.conf' files contains the following
1024 lines:
1025
1026 order hosts, bind
1027 multi on
1028
1029 Any changes, permanent and temporary, to the host name should be
1030 indicated in the `/etc/hosts' file, since it acts a limited local
1031 database of addresses and names (e.g., some SLIP connections
1032 dynamically allocate ip addresses).
1033
1034 *** Non-Networked Case
1035
1036 The solution described in the networked case applies here as well.
1037 However, if you never intend to network your machine, you can use a
1038 simpler solution: create an empty `/etc/host.conf' file. The command
1039 `touch /etc/host.conf' suffices to create the file. The `/etc/hosts'
1040 file is not necessary with this approach.
1041
1042 ** On Solaris 2.4, Dired hangs and C-g does not work. Or Emacs hangs
1161 forever waiting for termination of a subprocess that is a zombie. 1043 forever waiting for termination of a subprocess that is a zombie.
1162 1044
1163 casper@fwi.uva.nl says the problem is in X11R6. Rebuild libX11.so 1045 casper@fwi.uva.nl says the problem is in X11R6. Rebuild libX11.so
1164 after changing the file xc/config/cf/sunLib.tmpl. Change the lines 1046 after changing the file xc/config/cf/sunLib.tmpl. Change the lines
1165 1047
1197 #define ThreadedX NO 1079 #define ThreadedX NO
1198 in sun.cf and did `make World' to rebuild X11R6. Removing all 1080 in sun.cf and did `make World' to rebuild X11R6. Removing all
1199 `-DXTHREAD*' flags and `-lthread' entries from lib/X11/Makefile and 1081 `-DXTHREAD*' flags and `-lthread' entries from lib/X11/Makefile and
1200 typing 'make install' in that directory also seemed to work. 1082 typing 'make install' in that directory also seemed to work.
1201 1083
1202 *** On SunOS 4.1.3, Emacs unpredictably crashes in _yp_dobind_soft. 1084 ** With M-x enable-flow-control, you need to type C-\ twice to do
1203 1085 incremental search--a single C-\ gets no response.
1204 This happens if you configure Emacs specifying just `sparc-sun-sunos4' 1086
1205 on a system that is version 4.1.3. You must specify the precise 1087 This has been traced to communicating with your machine via kermit,
1206 version number (or let configure figure out the configuration, which 1088 with C-\ as the kermit escape character. One solution is to use
1207 it can do perfectly well for SunOS). 1089 another escape character in kermit. One user did
1208 1090
1209 *** Mail is lost when sent to local aliases. 1091 set escape-character 17
1092
1093 in his .kermrc file, to make C-q the kermit escape character.
1094
1095 ** The Motif version of Emacs paints the screen a solid color.
1096
1097 This has been observed to result from the following X resource:
1098
1099 Emacs*default.attributeFont: -*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*
1100
1101 That the resource has this effect indicates a bug in something, but we
1102 do not yet know what. If it is an Emacs bug, we hope someone can
1103 explain what the bug is so we can fix it. In the mean time, removing
1104 the resource prevents the problem.
1105
1106 ** Regular expressions matching bugs on SCO systems.
1107
1108 On SCO, there are problems in regexp matching when Emacs is compiled
1109 with the system compiler. The compiler version is "Microsoft C
1110 version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; Quick
1111 C Compiler Version 1.00.46 (Beta). The solution is to compile with
1112 GCC.
1113
1114 ** In Shell mode, you get a ^M at the end of every line.
1115
1116 This happens to people who use tcsh, because it is trying to be too
1117 smart. It sees that the Shell uses terminal type `unknown' and turns
1118 on the flag to output ^M at the end of each line. You can fix the
1119 problem by adding this to your .cshrc file:
1120
1121 if ($?EMACS) then
1122 if ($EMACS == "t") then
1123 unset edit
1124 stty -icrnl -onlcr -echo susp ^Z
1125 endif
1126 endif
1127
1128 ** An error message such as `X protocol error: BadMatch (invalid
1129 parameter attributes) on protocol request 93'.
1130
1131 This comes from having an invalid X resource, such as
1132 emacs*Cursor: black
1133 (which is invalid because it specifies a color name for something
1134 that isn't a color.)
1135
1136 The fix is to correct your X resources.
1137
1138 ** Mail is lost when sent to local aliases.
1210 1139
1211 Many emacs mail user agents (VM and rmail, for instance) use the 1140 Many emacs mail user agents (VM and rmail, for instance) use the
1212 sendmail.el library. This library can arrange for mail to be 1141 sendmail.el library. This library can arrange for mail to be
1213 delivered by passing messages to the /usr/lib/sendmail (usually) 1142 delivered by passing messages to the /usr/lib/sendmail (usually)
1214 program . In doing so, it passes the '-t' flag to sendmail, which 1143 program . In doing so, it passes the '-t' flag to sendmail, which
1231 sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript) 1160 sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript)
1232 1161
1233 IDA sendmail on vixen.cso.uiuc.edu in /pub: 1162 IDA sendmail on vixen.cso.uiuc.edu in /pub:
1234 sendmail-5.67b+IDA-1.5.tar.gz 1163 sendmail-5.67b+IDA-1.5.tar.gz
1235 1164
1236 *** Emacs fails to understand most Internet host names, even though 1165 ** On AIX, you get this message when running Emacs:
1166
1167 Could not load program emacs
1168 Symbol smtcheckinit in csh is undefined
1169 Error was: Exec format error
1170
1171 or this one:
1172
1173 Could not load program .emacs
1174 Symbol _system_con in csh is undefined
1175 Symbol _fp_trapsta in csh is undefined
1176 Error was: Exec format error
1177
1178 These can happen when you try to run on AIX 3.2.5 a program that was
1179 compiled with 3.2.4. The fix is to recompile.
1180
1181 ** After running emacs once, subsequent invocations crash.
1182
1183 Some versions of SVR4 have a serious bug in the implementation of the
1184 mmap () system call in the kernel; this causes emacs to run correctly
1185 the first time, and then crash when run a second time.
1186
1187 Contact your vendor and ask for the mmap bug fix; in the mean time,
1188 you may be able to work around the problem by adding a line to your
1189 operating system description file (whose name is reported by the
1190 configure script) that reads:
1191 #define SYSTEM_MALLOC
1192 This makes Emacs use memory less efficiently, but seems to work around
1193 the kernel bug.
1194
1195 ** Inability to send an Alt-modified key, when Emacs is communicating
1196 directly with an X server.
1197
1198 If you have tried to bind an Alt-modified key as a command, and it
1199 does not work to type the command, the first thing you should check is
1200 whether the key is getting through to Emacs. To do this, type C-h c
1201 followed by the Alt-modified key. C-h c should say what kind of event
1202 it read. If it says it read an Alt-modified key, then make sure you
1203 have made the key binding correctly.
1204
1205 If C-h c reports an event that doesn't have the Alt modifier, it may
1206 be because your X server has no key for the Alt modifier. The X
1207 server that comes from MIT does not set up the Alt modifier by
1208 default.
1209
1210 If your keyboard has keys named Alt, you can enable them as follows:
1211
1212 xmodmap -e 'add mod2 = Alt_L'
1213 xmodmap -e 'add mod2 = Alt_R'
1214
1215 If the keyboard has just one key named Alt, then only one of those
1216 commands is needed. The modifier `mod2' is a reasonable choice if you
1217 are using an unmodified MIT version of X. Otherwise, choose any
1218 modifier bit not otherwise used.
1219
1220 If your keyboard does not have keys named Alt, you can use some other
1221 keys. Use the keysym command in xmodmap to turn a function key (or
1222 some other 'spare' key) into Alt_L or into Alt_R, and then use the
1223 commands show above to make them modifier keys.
1224
1225 Note that if you have Alt keys but no Meta keys, Emacs translates Alt
1226 into Meta. This is because of the great importance of Meta in Emacs.
1227
1228 ** `Pid xxx killed due to text modification or page I/O error'
1229
1230 On HP/UX, you can get that error when the Emacs executable is on an NFS
1231 file system. HP/UX responds this way if it tries to swap in a page and
1232 does not get a response from the server within a timeout whose default
1233 value is just ten seconds.
1234
1235 If this happens to you, extend the timeout period.
1236
1237 ** `expand-file-name' fails to work on any but the machine you dumped
1238 Emacs on.
1239
1240 On Ultrix, if you use any of the functions which look up information
1241 in the passwd database before dumping Emacs (say, by using
1242 expand-file-name in site-init.el), then those functions will not work
1243 in the dumped Emacs on any host but the one Emacs was dumped on.
1244
1245 The solution? Don't use expand-file-name in site-init.el, or in
1246 anything it loads. Yuck - some solution.
1247
1248 I'm not sure why this happens; if you can find out exactly what is
1249 going on, and perhaps find a fix or a workaround, please let us know.
1250 Perhaps the YP functions cache some information, the cache is included
1251 in the dumped Emacs, and is then inaccurate on any other host.
1252
1253 ** Emacs fails to understand most Internet host names, even though
1237 the names work properly with other programs on the same system. 1254 the names work properly with other programs on the same system.
1238 Emacs won't work with X-windows if the value of DISPLAY is HOSTNAME:0. 1255 Emacs won't work with X-windows if the value of DISPLAY is HOSTNAME:0.
1239 Gnus can't make contact with the specified host for nntp. 1256 Gnus can't make contact with the specified host for nntp.
1240 1257
1241 This typically happens on Suns and other systems that use shared 1258 This typically happens on Suns and other systems that use shared
1266 the s- file defines LIBS_SYSTEM as -lfoo -lbar, you could change config.h 1283 the s- file defines LIBS_SYSTEM as -lfoo -lbar, you could change config.h
1267 again to say this: 1284 again to say this:
1268 1285
1269 #define LIBS_SYSTEM -lresolv -lfoo -lbar 1286 #define LIBS_SYSTEM -lresolv -lfoo -lbar
1270 1287
1271 *** With process-connection-type set to t, each line of subprocess 1288 ** Trouble using ptys on AIX.
1289
1290 People often install the pty devices on AIX incorrectly.
1291 Use `smit pty' to reinstall them properly.
1292
1293 ** Shell mode on HP/UX gives the message, "`tty`: Ambiguous".
1294
1295 christos@theory.tn.cornell.edu says:
1296
1297 The problem is that in your .cshrc you have something that tries to
1298 execute `tty`. If you are not running the shell on a real tty then tty
1299 will print "not a tty". Csh expects one word in some places, but tty
1300 is giving it back 3.
1301
1302 The solution is to add a pair of quotes around `tty` to make it a
1303 single word:
1304
1305 if (`tty` == "/dev/console")
1306
1307 should be changed to:
1308
1309 if ("`tty`" == "/dev/console")
1310
1311 Even better, move things that set up terminal sections out of .cshrc
1312 and into .login.
1313
1314 ** With process-connection-type set to t, each line of subprocess
1272 output is terminated with a ^M, making ange-ftp and GNUS not work. 1315 output is terminated with a ^M, making ange-ftp and GNUS not work.
1273 1316
1274 On SunOS systems, this problem has been seen to be a result of an 1317 On SunOS systems, this problem has been seen to be a result of an
1275 incomplete installation of gcc 2.2 which allowed some non-ANSI 1318 incomplete installation of gcc 2.2 which allowed some non-ANSI
1276 compatible include files into the compilation. In particular this 1319 compatible include files into the compilation. In particular this
1277 affected virtually all ioctl() calls. 1320 affected virtually all ioctl() calls.
1278 1321
1279 1322 ** Once you pull down a menu from the menubar, it won't go away.
1280 ** Linux 1323
1281 *** Mandrake 1324 It has been claimed that this is caused by a bug in certain very old
1282 1325 (1990?) versions of the twm window manager. It doesn't happen with
1283 The Mandrake Linux distribution is attempting to comprehensively 1326 recent vintages, or with other window managers.
1284 update the user interface, and make it consistent across 1327
1285 applications. This is very difficult, and will occasionally cause 1328 ** Emacs ignores the "help" key when running OLWM.
1286 conflicts with applications like Emacs with their own long-established 1329
1287 interfaces. Known issues specific to Mandrake or especially common: 1330 OLWM grabs the help key, and retransmits it to the appropriate client
1288 1331 using XSendEvent. Allowing emacs to react to synthetic events is a
1289 Some versions of XEmacs distributed with Mandrake were patched to make 1332 security hole, so this is turned off by default. You can enable it by
1290 the Meta and Alt keysyms synonymous. These normally work as expected 1333 setting the variable x-allow-sendevents to t. You can also cause fix
1291 in the Mandrake environment. However, custom-built XEmacsen will seem 1334 this by telling OLWM to not grab the help key, with the null binding
1292 to "inexplicably" not respect the "Alt-invokes-Meta-commands" convention. 1335 "OpenWindows.KeyboardCommand.Help:".
1293 See "I want XEmacs to use the Alt key" below. 1336
1294 1337 ** Programs running under terminal emulator do not recognize `emacs'
1295 The color-gcc wrapper (see below) is in common use on the Mandrake 1338 terminal type.
1296 platform. 1339
1297 1340 The cause of this is a shell startup file that sets the TERMCAP
1298 *** I want XEmacs to use the Alt key, not the XXX key, for Meta commands 1341 environment variable. The terminal emulator uses that variable to
1299 1342 provide the information on the special terminal type that Emacs
1300 For historical reasons, XEmacs looks for a Meta key, then an Alt key. 1343 emulates.
1301 It binds Meta commands to the X11 modifier bit attached to the first 1344
1302 of these it finds. On PCs, the Windows key is often assigned the Meta 1345 Rewrite your shell startup file so that it does not change TERMCAP
1303 bit, but many desktop environments go to great lengths to get all apps 1346 in such a case. You could use the following conditional which sets
1304 to use the Alt key, and reserve the Windows key to (sensibly enough) 1347 it only if it is undefined.
1305 the window manager. 1348
1306 1349 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file
1307 One correct way to implement this was suggested on comp.emacs.xemacs 1350
1308 (by Kilian Foth and in more detail by Michael Piotrowski): unmap the 1351 Or you could set TERMCAP only when you set TERM--which should not
1309 Meta modifier using xmodmap or xkb, and then map the Meta/Windows key 1352 happen in a non-login shell.
1310 to the Super or Hyper keysym and an appropriate mod bit. XEmacs will
1311 not find the Meta keysym, and default to using the Alt key for Meta
1312 keybindings. Typically few applications use the (X11) Meta modifier;
1313 it is tedious but not too much so to teach the ones you need to use
1314 Super instead of Meta. There may be further useful hints in the
1315 discussion of keymapping on non-Linux platforms.
1316
1317 *** The color-gcc wrapper
1318
1319 This wrapper colorizes the error messages from gcc. By default XEmacs
1320 does not interpret the escape sequences used to generate colors,
1321 resulting in a cluttered, hard-to-read buffer. You can remove or
1322 defeat the wrapper, or you may get good results from the ansi-color.el
1323 library:
1324
1325 http://www.geocities.com/kensanata/color-emacs.html#ansicolors
1326
1327 *** `C-z', or `M-x suspend-emacs' hangs instead of suspending.
1328
1329 If you build with `gpm' support on Linux, you cannot suspend XEmacs
1330 because gpm installs a buggy SIGTSTP handler. Either compile with
1331 `--with-gpm=no', or don't suspend XEmacs on the Linux console until
1332 this bug is fixed.
1333
1334 *** With certain fonts, when the cursor appears on a character, the
1335 character doesn't appear--you get a solid box instead.
1336
1337 One user on a Linux system reported that this problem went away with
1338 installation of a new X server. The failing server was XFree86 3.1.1.
1339 XFree86 3.1.2 works.
1340
1341 *** Slow startup on Linux.
1342
1343 People using systems based on the Linux kernel sometimes report that
1344 startup takes 10 to 15 seconds longer than `usual'.
1345
1346 This is because Emacs looks up the host name when it starts.
1347 Normally, this takes negligible time; the extra delay is due to
1348 improper system configuration. This problem can occur for both
1349 networked and non-networked machines.
1350
1351 Here is how to fix the configuration. It requires being root.
1352
1353 **** Networked Case
1354
1355 First, make sure the files `/etc/hosts' and `/etc/host.conf' both
1356 exist. The first line in the `/etc/hosts' file should look like this
1357 (replace HOSTNAME with your host name):
1358
1359 127.0.0.1 localhost HOSTNAME
1360
1361 Also make sure that the `/etc/host.conf' files contains the following
1362 lines:
1363
1364 order hosts, bind
1365 multi on
1366
1367 Any changes, permanent and temporary, to the host name should be
1368 indicated in the `/etc/hosts' file, since it acts a limited local
1369 database of addresses and names (e.g., some SLIP connections
1370 dynamically allocate ip addresses).
1371
1372 **** Non-Networked Case
1373
1374 The solution described in the networked case applies here as well.
1375 However, if you never intend to network your machine, you can use a
1376 simpler solution: create an empty `/etc/host.conf' file. The command
1377 `touch /etc/host.conf' suffices to create the file. The `/etc/hosts'
1378 file is not necessary with this approach.
1379
1380
1381 ** IRIX
1382 *** On Irix, I don't see the toolbar icons and I'm getting lots of
1383 entries in the warnings buffer.
1384
1385 SGI ships a really old Xpm library in /usr/lib which does not work at
1386 all well with XEmacs. The solution is to install your own copy of the
1387 latest version of Xpm somewhere and then use the --site-includes and
1388 --site-libraries flags to tell configure where to find it.
1389
1390 *** Trouble using ptys on IRIX, or running out of ptys.
1391
1392 The program mkpts (which may be in `/usr/adm' or `/usr/sbin') needs to
1393 be set-UID to root, or non-root programs like Emacs will not be able
1394 to allocate ptys reliably.
1395
1396 *** Motif dialog boxes lose on Irix.
1397
1398 Larry Auton <lda@control.att.com> writes:
1399 Beware of not specifying
1400
1401 --with-dialogs=athena
1402
1403 if it builds with the motif dialogs [boom!] you're a dead man.
1404
1405 *** Beware of the default image & graphics library on Irix
1406
1407 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
1408
1409 You *have* to compile your own jpeg lib. The one delivered with SGI
1410 systems is a C++ lib, which apparently XEmacs cannot cope with.
1411
1412
1413 ** Digital UNIX/OSF/VMS/Ultrix
1414 *** XEmacs crashes on Digital Unix within font-lock, or when dealing
1415 with large compilation buffers.
1416
1417 The default stack size under Digital Unix is rather small (2M as
1418 opposed to Solaris 8M), hosing the regexp code, which uses alloca()
1419 extensively, overflowing the stack when complex regexps are used.
1420 Workarounds:
1421
1422 1) Increase your stack size, using `ulimit -s 8192' or a (t)csh
1423 equivalent;
1424
1425 2) Recompile regex.c with REGEX_MALLOC defined.
1426
1427 *** The `Alt' key doesn't behave as `Meta' when running DECwindows.
1428
1429 The default DEC keyboard mapping has the Alt keys set up to generate the
1430 keysym `Multi_key', which has a meaning to xemacs which is distinct from that
1431 of the `Meta_L' and `Meta-R' keysyms. A second problem is that certain keys
1432 have the Mod2 modifier attached to them for no adequately explored reason.
1433 The correct fix is to pass this file to xmodmap upon starting X:
1434
1435 clear mod2
1436 keysym Multi_key = Alt_L
1437 add mod1 = Alt_L
1438 add mod1 = Alt_R
1439
1440 *** The Compose key on a DEC keyboard does not work as Meta key.
1441
1442 This shell command should fix it:
1443
1444 xmodmap -e 'keycode 0xb1 = Meta_L'
1445
1446 *** `expand-file-name' fails to work on any but the machine you dumped
1447 Emacs on.
1448
1449 On Ultrix, if you use any of the functions which look up information
1450 in the passwd database before dumping Emacs (say, by using
1451 expand-file-name in site-init.el), then those functions will not work
1452 in the dumped Emacs on any host but the one Emacs was dumped on.
1453
1454 The solution? Don't use expand-file-name in site-init.el, or in
1455 anything it loads. Yuck - some solution.
1456
1457 I'm not sure why this happens; if you can find out exactly what is
1458 going on, and perhaps find a fix or a workaround, please let us know.
1459 Perhaps the YP functions cache some information, the cache is included
1460 in the dumped Emacs, and is then inaccurate on any other host.
1461
1462
1463 ** HP-UX
1464 *** I get complaints about the mapping of my HP keyboard at startup,
1465 but I haven't changed anything.
1466
1467 The default HP keymap is set up to have Mod1 assigned to two different keys:
1468 Meta_L and Mode_switch (even though there is not actually a Mode_switch key on
1469 the keyboard -- it uses an "imaginary" keycode.) There actually is a reason
1470 for this, but it's not a good one. The correct fix is to execute this command
1471 upon starting X:
1472
1473 xmodmap -e 'remove mod1 = Mode_switch'
1474
1475 *** On HP-UX, you get "poll: Interrupted system call" message in the
1476 window where XEmacs was launched.
1477
1478 Richard Cognot <cognot@ensg.u-nancy.fr> writes:
1479
1480 I get a very strange problem when linking libc.a dynamically: every
1481 event (mouse, keyboard, expose...) results in a "poll: Interrupted
1482 system call" message in the window where XEmacs was
1483 launched. Forcing a static link of libc.a alone by adding
1484 /usr/lib/libc.a at the end of the link line solves this. Note that
1485 my 9.07 build of 19.14b17 and my (old) build of 19.13 both exhibit
1486 the same behavior. I've tried various hpux patches to no avail. If
1487 this problem cannot be solved before the release date, binary kits
1488 for HP *must* be linked statically against libc, otherwise this
1489 problem will show up. (This is directed at whoever will volunteer
1490 for this kit, as I won't be available to do it, unless 19.14 gets
1491 delayed until mid-june ;-). I think this problem will be an FAQ soon
1492 after the release otherwise.
1493
1494 Note: The above entry is probably not valid for XEmacs 21.0 and
1495 later.
1496
1497 *** The right Alt key works wrong on German HP keyboards (and perhaps
1498 other non-English HP keyboards too).
1499
1500 This is because HP-UX defines the modifiers wrong in X. Here is a
1501 shell script to fix the problem; be sure that it is run after VUE
1502 configures the X server.
1503
1504 xmodmap 2> /dev/null - << EOF
1505 keysym Alt_L = Meta_L
1506 keysym Alt_R = Meta_R
1507 EOF
1508
1509 xmodmap - << EOF
1510 clear mod1
1511 keysym Mode_switch = NoSymbol
1512 add mod1 = Meta_L
1513 keysym Meta_R = Mode_switch
1514 add mod2 = Mode_switch
1515 EOF
1516
1517
1518 *** XEmacs dumps core at startup when native audio is used. Native
1519 audio does not work with recent versions of HP-UX.
1520
1521 Under HP-UX 10.20 and later (e.g., HP-UX 11.XX), with native audio
1522 enabled, the dumped XEmacs binary ("xemacs") core dumps at startup if
1523 recent versions of the libAlib.sl audio shared library is used. Note
1524 that "temacs" will run, but "xemacs" will dump core. This, of course,
1525 causes the XEmacs build to fail. If GNU malloc is enabled, a stack
1526 trace will show XEmacs to have crashed in the "first" call to malloc().
1527
1528 This bug currently exists in all versions of XEmacs, when the undump
1529 mechanism is used. It is not known if using the experimental portable
1530 dumper will allow native audio to work.
1531
1532 **** Cause:
1533
1534 Recent versions of the HP-UX 10.20 (and later) audio shared library (in
1535 /opt/audio/lib), pulls in the libdce shared library, which pulls in a
1536 thread (libcma) library. This prevents the HP-UX undump() routine (in
1537 unexhp9k800.c) from properly working. What's happening is that some
1538 initialization routines are being called in the libcma library, *BEFORE*
1539 main() is called, and these initialization routines are calling
1540 malloc(). Unfortunately, in order for the undumper to work, XEmacs must
1541 adjust (move upwards) the sbrk() value *BEFORE* the first call to
1542 malloc(); if malloc() is called before XEmacs has properly adjusted sbrk
1543 (which is what is happening), dumped memory that is being used by
1544 XEmacs, is improperly re-allocated for use by malloc() and the dumped
1545 memory is corrupted. This causes XEmacs to die an horrible death.
1546
1547 It is believed that versions of the audio library past December 1998
1548 will trigger this problem. Under HP-UX 10.20, you probably have to
1549 install audio library patches to encounter this. It's probable that
1550 recent "fresh, out-of-the-box" HP-UX 11.XX workstations also have this
1551 problem. For HP-UX 10.20, it's believed that audio patch PHSS_17121 (or
1552 a superceeding one, like PHSS_17554, PHSS_17971, PHSS_18777, PHSS_21481,
1553 or PHSS_21662, etc.) will trigger this.
1554
1555 To check if your audio library will cause problems for XEmacs, run
1556 "chatr /opt/audio/lib/libAlib.sl". If "libdce" appears in the displayed
1557 shared library list, XEmacs will probably encounter problems if audio is
1558 enabled.
1559
1560 **** Workaround:
1561
1562 Don't enable native audio. Re-run configure without native audio
1563 support.
1564
1565 If your site supports it, try using NAS (Network Audio Support).
1566
1567 Try using the experimental portable dumper. It may work, or it may
1568 not.
1569
1570
1571 *** `Pid xxx killed due to text modification or page I/O error'
1572
1573 On HP-UX, you can get that error when the Emacs executable is on an NFS
1574 file system. HP-UX responds this way if it tries to swap in a page and
1575 does not get a response from the server within a timeout whose default
1576 value is just ten seconds.
1577
1578 If this happens to you, extend the timeout period.
1579
1580 *** Shell mode on HP-UX gives the message, "`tty`: Ambiguous".
1581
1582 christos@theory.tn.cornell.edu says:
1583
1584 The problem is that in your .cshrc you have something that tries to
1585 execute `tty`. If you are not running the shell on a real tty then tty
1586 will print "not a tty". Csh expects one word in some places, but tty
1587 is giving it back 3.
1588
1589 The solution is to add a pair of quotes around `tty` to make it a
1590 single word:
1591
1592 if (`tty` == "/dev/console")
1593
1594 should be changed to:
1595
1596 if ("`tty`" == "/dev/console")
1597
1598 Even better, move things that set up terminal sections out of .cshrc
1599 and into .login.
1600
1601
1602 ** SCO
1603 *** Regular expressions matching bugs on SCO systems.
1604
1605 On SCO, there are problems in regexp matching when Emacs is compiled
1606 with the system compiler. The compiler version is "Microsoft C
1607 version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; Quick
1608 C Compiler Version 1.00.46 (Beta). The solution is to compile with
1609 GCC.
1610
1611
1612 ** Windows
1613 *** Emacs exits with "X protocol error" when run with an X server for
1614 Windows.
1615
1616 A certain X server for Windows had a bug which caused this.
1617 Supposedly the newer 32-bit version of this server doesn't have the
1618 problem.
1619
1620 1353
1621 1354
1622 * Compatibility problems (with Emacs 18, GNU Emacs, or previous XEmacs/lemacs) 1355 * Compatibility problems (with Emacs 18, GNU Emacs, or previous XEmacs/lemacs)
1623 ============================================================================== 1356 ==============================================================================
1624 1357
1625 *** "Symbol's value as variable is void: unread-command-char". 1358 ** "Symbol's value as variable is void: unread-command-char".
1626 "Wrong type argument: arrayp, #<keymap 143 entries>" 1359 "Wrong type argument: arrayp, #<keymap 143 entries>"
1627 "Wrong type argument: stringp, [#<keypress-event return>]" 1360 "Wrong type argument: stringp, [#<keypress-event return>]"
1628 1361
1629 There are a few incompatible changes in XEmacs, and these are the 1362 There are a few incompatible changes in XEmacs, and these are the
1630 symptoms. Some of the emacs-lisp code you are running needs to be 1363 symptoms. Some of the emacs-lisp code you are running needs to be