Also, Try finding the things you need using one of the search commands
XEmacs provides (e.g. `C-s').
-A general advice:
- WATCH OUT for .emacs file! ~/.emacs is your Emacs init file. If
- you observe strange problems, invoke XEmacs with the `-q' option
- and see if you can repeat the problem.
+General advice:
+ WATCH OUT for your init file! (~/.xemacs/init.el or ~/.emacs) If
+ you observe strange problems, invoke XEmacs with the `-vanilla'
+ option and see if you can repeat the problem.
* Problems with building XEmacs
** SunOS/Solaris
+*** Crashes when using Motif libraries, especially with multiple frames.
+
+Crashes that produce C-backtraces like this:
+
+#0 0xfec9a118 in _libc_kill () from /usr/lib/libc.so.1
+#1 0x77f48 in fatal_error_signal (sig=11)
+ at /codes/rpluim/xemacs-21.4/src/emacs.c:539
+#2 <signal handler called>
+#3 0xfee929f4 in XFindContext () from /usr/openwin/lib/libX11.so.4
+#4 0xfee92930 in XFindContext () from /usr/openwin/lib/libX11.so.4
+#5 0xff297e54 in DisplayDestroy () from /usr/dt/lib/libXm.so.4
+#6 0xfefbece0 in XtCallCallbackList () from /usr/openwin/lib/libXt.so.4
+#7 0xfefc486c in XtPhase2Destroy () from /usr/openwin/lib/libXt.so.4
+#8 0xfefc45d0 in _XtDoPhase2Destroy () from /usr/openwin/lib/libXt.so.4
+#9 0xfefc43b4 in XtDestroyWidget () from /usr/openwin/lib/libXt.so.4
+#10 0x15cf9c in x_delete_device (d=0x523f00)
+
+are caused by buggy Motif libraries. Installing the following patches
+has been reported to solve the problem on Solaris 2.7:
+
+107081-40 107656-07
+
+For information (although they have not been confirmed to work), the
+equivalent patches for Solaris 2.8 are:
+
+108940-33 108652-25
+
*** Dumping error when using GNU binutils / GNU ld on a Sun.
Errors similar to the following:
- uninstalling GNU ld.
+- configuring XEmacs with these environment settings (suggested by
+ Goran Koruga <goran.koruga@hermes.si>):
+ LD=/usr/ccs/bin/ld AS=/usr/ccs/bin/as configure
+
The Solaris2 FAQ claims:
When you install gcc, don't make the mistake of installing
and later.
** Cygwin
+
*** In general use etc/check_cygwin_setup.sh to trap environment problems.
The script etc/check_cygwin_setup.sh will attempt to detect whether
-you have a suitable environment for building. This script may not work
+you have a suitable environment for building. This script may not work
correctly if you are using ash instead of bash (see below).
+*** Syntax errors running configure scripts, make failing with exit code 127
+ in inexplicable situations, etc.
+
+This may be because you are using the default cygwin shell. The
+default cygwin shell (/bin/sh.exe) is ash which appears to work in
+most circumstances but has some weird failure modes. You need to
+replace the symlink with bash.exe.
+
+*** Lots of compile errors, esp. on lines containing macro definitions
+ terminated by backslashes.
+
+Your partition holding the source files is mounted binary. It needs
+to be mounted text. (This will not screw up any binary files because
+the Cygwin utilities specify explicitly whether they want binary or
+text mode when working with source vs. binary files, which overrides
+the mount type.) To fix this, you just need to run the appropriate
+mount command once -- afterwards, the settings are remembered in the
+registry.
+
+*** Errors from make like /c:not found.
+
+make sure you set the environment variable MAKE_MODE to UNIX in your
+.bashrc, Control Panel (Windows 2000/NT), or AUTOEXEC.BAT (Windows
+98/95).
+
*** X11 not detected.
This is usually because xmkmf is not in your path or because you are
*** Subprocesses do not work.
-You do not have "tty" in your CYGWIN32 (for b19) or CYGWIN (for b20)
-environment variable. This must be set in your autoexec.bat (win95) or
-the system properties (winnt) as it must be read before the cygwin dll
-initializes.
+You do not have "tty" in your CYGWIN environment variable. This must
+be set in your autoexec.bat (win95) or the system properties (winnt)
+as it must be read before the cygwin DLL initializes.
*** ^G does not work on hung subprocesses.
by defining BROKEN_SIGIO in src/s/cygwin32.h, however this currently
leads to instability in XEmacs.
-*** The XEmacs executable crashes at startup.
-
-This can be caused by many things.
-
-If you are running with X11 you need to have cygwin b19 or cygwin
-b20.1 or greater, cygwin b20 will not work.
-
-If you are running with cygwin b19 make sure you are using egcs 1.0.2
-rather than vanilla gcc. XEmacs builds by default with -O3 which does
-not work with the gcc that ships with b19. Alternatively use -O2.
-
*** The info files will not build.
makeinfo that ships with cygwin (all versions) is a noop. You need to
*** I have no graphics.
-You need to obtain the various graphics libraries. Pre-built versions
+You need to obtain the various graphics libraries. Pre-built versions
of these and the X libraries are located on the XEmacs website in
-ftp://ftp.xemacs.org/pub/aux/cygwin*.
+ftp://ftp.xemacs.org/pub/aux/cygwin/.
*** There are no images in the toolbar buttons.
A newer problem is due to XEmacs changing to use the modern
getaddrinfo() interface from the older gethostbyname() interface. The
solution above is insufficient, because getaddrinfo() by default tries
-to get IPv6 information for localhost. This always involves a dns
-lookup to get the CNAME, and the strategies above don't work. It then
-falls back to IPv4 behavior.
+to get IPv6 information for localhost (including the local X server).
+This always involves a dns lookup to get the CNAME, and the strategies
+above don't work. It then falls back to IPv4 behavior.
***** Robust network case
is appropriate) works in most cases.
If you cannot or do not want to do that, you can hard code IPv4
-behavior in src/process-unix.c. This is bad[tm], on your own head be
-it. In the function unix_canonicalize_host_name() about ten lines
-down, change the statement
-
- hints.ai_family = AF_UNSPEC;
-
-to
-
- hints.ai_family = PF_INET;
+behavior in src/process-unix.c. Add `--with-ipv6-cname=no" to your
+configure options and rebuild XEmacs.
-and rebuild XEmacs.
+*** XEmacs disappears after several sound events in succession
-getaddrinfo() is also called in src/sysdep.c:init_system_name() and in
-src/process-unix.c:unix_open_network_stream(). It should not be
-useful to make this change in either of those places.
+If esd is not running (e.g. you unchecked the run esd checkbox in the
+GNOME Configuration tool), every sound event will cause the esound
+client library to signal SIGUSR1. It is not that difficult (hold down
+PgUp or PgDn, for example) to cause XEmacs to generate additional
+SIGUSR1 signals before the first handler has a chance to reset, so the
+second SIGUSR1 causes the default behavior of ending the process.
+The solution is either to build XEmacs with -sound=native,noesd or to make sure
+that esd is in fact running.
** IRIX
*** On Irix, I don't see the toolbar icons and I'm getting lots of
** Windows
-*** Emacs exits with "X protocol error" when run with an X server for
-Windows.
+*** In general, the Windows code is less mature than the Unix code.
+
+The Windows code base is still changing quickly. If you are
+experiencing problems, try the latest beta version to see if the
+problem still exists. Also ask on xemacs-nt@xemacs.org.
+
+
+** Cygwin
+*** Subprocesses do not work.
+
+You do not have "tty" in your CYGWIN environment variable. This must
+be set in your autoexec.bat (win95) or the system properties (winnt)
+as it must be read before the cygwin DLL initializes.
+
+*** ^G does not work on hung subprocesses.
-A certain X server for Windows had a bug which caused this.
-Supposedly the newer 32-bit version of this server doesn't have the
-problem.
+This is a known problem. It can be remedied by defining BROKEN_SIGIO
+in src/s/cygwin.h, however this currently leads to instability in XEmacs.
+(#### is this still true?)
+*** Errors from make like `/c:not found' when running `M-x compile'.
+Make sure you set the environment variable MAKE_MODE to UNIX in your
+init file (.xemacs/init.el), Control Panel (Windows 2000/NT), or
+AUTOEXEC.BAT (Windows 98/95).
+
+*** There are no images in the toolbar buttons.
+
+You need version 4.71 of commctrl.dll which does not ship with windows
+95. You can get this by installing IE 4.0 or downloading it from the
+microsoft website.
+
* Compatibility problems (with Emacs 18, GNU Emacs, or previous XEmacs/lemacs)
==============================================================================