]> code.delx.au - gnu-emacs/blobdiff - etc/PROBLEMS
Merge from emacs--devo--0
[gnu-emacs] / etc / PROBLEMS
index db8840d3d157054a321b69aa5eaa015ecf24cd3d..ef67a658e4637aaedc2694d03c6b352472f9af27 100644 (file)
@@ -2,6 +2,10 @@ This file describes various problems that have been encountered
 in compiling, installing and running GNU Emacs.  Try doing Ctl-C Ctl-t
 and browsing through the outline headers.
 
+* Mule-UCS doesn't work in Emacs 23.
+
+It's completely redundant now, as far as we know.
+
 * Emacs startup failures
 
 ** Emacs fails to start, complaining about missing fonts.
@@ -202,6 +206,11 @@ necessary but missing, please report it via M-x report-emacs-bug.
 On platforms such as Solaris, you can also work around this problem by
 configuring your compiler to use the native linker instead of GNU ld.
 
+** Emacs compiled with Gtk+ crashes when closing a display (x-close-connection).
+
+This happens because of bugs in Gtk+.  Gtk+ 2.10 seems to be OK.  See bug
+http://bugzilla.gnome.org/show_bug.cgi?id=85715.
+
 * General runtime problems
 
 ** Lisp problems
@@ -338,7 +347,7 @@ The solution is to use gawk (GNU awk).
 *** Emacs fails to understand most Internet host names, even though
 the names work properly with other programs on the same system.
 *** Emacs won't work with X-windows if the value of DISPLAY is HOSTNAME:0.
-*** GNUs can't make contact with the specified host for nntp.
+*** Gnus can't make contact with the specified host for nntp.
 
 This typically happens on Suns and other systems that use shared
 libraries.  The cause is that the site has installed a version of the
@@ -535,7 +544,7 @@ on the flag to output ^M at the end of each line.  You can fix the
 problem by adding this to your .cshrc file:
 
     if ($?EMACS) then
-        if ($EMACS == "t") then
+        if ("$EMACS" =~ /*) then
             unset edit
             stty  -icrnl -onlcr -echo susp ^Z
         endif
@@ -700,7 +709,11 @@ server, then the characters that have no font appear as hollow boxes.
 You can remedy the problem by installing additional fonts.
 
 The intlfonts distribution includes a full spectrum of fonts that can
-display all the characters Emacs supports.
+display all the characters Emacs supports.  The etl-unicode collection
+of fonts (available from <URL:ftp://ftp.x.org/contrib/fonts/> and
+<URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>) includes
+fonts that can display many Unicode characters; they can also be used
+by ps-print and ps-mule to print Unicode characters.
 
 Another cause of this for specific characters is fonts which have a
 missing glyph and no default character.  This is known to occur for
@@ -710,7 +723,8 @@ of this character to display a space.
 
 ** Under X11, some characters appear improperly aligned in their lines.
 
-You may have bad X11 fonts; try installing the intlfonts distribution.
+You may have bad X11 fonts; try installing the intlfonts distribution
+or the etl-unicode collection (see the previous entry).
 
 ** Certain fonts make each line take one pixel more than it "should".
 
@@ -823,6 +837,11 @@ feature (in the font part of the configuration window).
 
 * Internationalization problems
 
+** M-{ does not work on a Spanish PC keyboard.
+
+Many Spanish keyboards seem to ignore that combination.  Emacs can't
+do anything about it.
+
 ** Characters from the mule-unicode charsets aren't displayed under X.
 
 XFree86 4 contains many fonts in iso10646-1 encoding which have
@@ -841,9 +860,16 @@ mule-unicode-0100-24ff:-gnu-unifont-*-iso10646-1
 
 ** The UTF-8/16/7 coding systems don't encode CJK (Far Eastern) characters.
 
-Emacs by default only supports the parts of the Unicode BMP whose code
-points are in the ranges 0000-33ff and e000-ffff.  This excludes: most
-of CJK, Yi and Hangul, as well as everything outside the BMP.
+Emacs directly supports the Unicode BMP whose code points are in the
+ranges 0000-33ff and e000-ffff, and indirectly supports the parts of
+CJK characters belonging to these legacy charsets:
+
+    GB2312, Big5, JISX0208, JISX0212, JISX0213-1, JISX0213-2, KSC5601
+
+The latter support is done in Utf-Translate-Cjk mode (turned on by
+default).   Which Unicode CJK characters are decoded into which Emacs
+charset is decided by the current language environment.  For instance,
+in Chinese-GB, most of them are decoded into chinese-gb2312.
 
 If you read UTF-8 data with code points outside these ranges, the
 characters appear in the buffer as raw bytes of the original UTF-8
@@ -853,13 +879,6 @@ If you read such characters from UTF-16 or UTF-7 data, they are
 substituted with the Unicode `replacement character', and you lose
 information.
 
-To edit such UTF data, turn on Utf-Translate-Cjk mode, which makes
-many common CJK characters available for encoding and decoding and can
-be extended by updating the tables it uses.  This also allows you to
-save as UTF buffers containing characters decoded by the chinese-,
-japanese- and korean- coding systems, e.g. cut and pasted from
-elsewhere.
-
 ** Mule-UCS loads very slowly.
 
 Changes to Emacs internals interact badly with Mule-UCS's `un-define'
@@ -903,6 +922,36 @@ distributions, such as Debian, may already have applied such a patch.)
 Note that Emacs has native support for Unicode, roughly equivalent to
 Mule-UCS's, so you may not need it.
 
+** Mule-UCS compilation problem.
+
+Emacs of old versions and XEmacs byte-compile the form `(progn progn
+...)' the same way as `(progn ...)', but Emacs of version 21.3 and the
+later process that form just as interpreter does, that is, as `progn'
+variable reference.  Apply the following patch to Mule-UCS 0.84 to
+make it compiled by the latest Emacs.
+
+--- mucs-ccl.el        2 Sep 2005 00:42:23 -0000       1.1.1.1
++++ mucs-ccl.el        2 Sep 2005 01:31:51 -0000       1.3
+@@ -639,10 +639,14 @@
+       (mucs-notify-embedment 'mucs-ccl-required name)
+       (setq ccl-pgm-list (cdr ccl-pgm-list)))
+ ;   (message "MCCLREGFIN:%S" result)
+-    `(progn
+-       (setq mucs-ccl-facility-alist
+-           (quote ,mucs-ccl-facility-alist))
+-       ,@result)))
++    ;; The only way the function is used in this package is included
++    ;; in `mucs-package-definition-end-hook' value, where it must
++    ;; return (possibly empty) *list* of forms.  Do this.  Do not rely
++    ;; on byte compiler to remove extra `progn's in `(progn ...)'
++    ;; form.
++    `((setq mucs-ccl-facility-alist
++          (quote ,mucs-ccl-facility-alist))
++      ,@result)))
+
+ ;;; Add hook for embedding translation informations to a package.
+ (add-hook 'mucs-package-definition-end-hook
+
 ** Accented ISO-8859-1 characters are displayed as | or _.
 
 Try other font set sizes (S-mouse-1).  If the problem persists with
@@ -961,7 +1010,7 @@ xmodmap command to the xdm setup script for that display.
 
 Use the shell command `xset bc' to make the old X Menu package work.
 
-*** C-SPC fails to work on Fedora GNU/Linux.
+*** C-SPC fails to work on Fedora GNU/Linux (or with fcitx input method).
 
 Fedora Core 4 steals the C-SPC key by default for the `iiimx' program
 which is the input method for some languages.  It blocks Emacs users
@@ -975,6 +1024,12 @@ Another is to specify `Emacs*useXIM: false' in your X resources.
 
 Another is to build Emacs with the `--without-xim' configure option.
 
+The same problem happens on any other system if you are using fcitx
+(Chinese input method) which by default use C-SPC for toggling.  If
+you want to use fcitx with Emacs, you have two choices.  Toggle fcitx
+by another key (e.g. C-\) by modifying ~/.fcitx/config, or be
+accustomed to use C-@ for `set-mark-command'.
+
 *** M-SPC seems to be ignored as input.
 
 See if your X server is set up to use this as a command
@@ -1040,6 +1095,15 @@ into Meta.  This is because of the great importance of Meta in Emacs.
 
 ** Window-manager and toolkit-related problems
 
+*** Gnome: Emacs receives input directly from the keyboard, bypassing XIM.
+
+This seems to happen when gnome-settings-daemon version 2.12 or later
+is running.  If gnome-settings-daemon is not running, Emacs receives
+input through XIM without any problem.  Furthermore, this seems only
+to happen in *.UTF-8 locales; zh_CN.GB2312 and zh_CN.GBK locales, for
+example, work fine.  A bug report has been filed in the Gnome
+bugzilla: http://bugzilla.gnome.org/show_bug.cgi?id=357032
+
 *** Gnome: Emacs' xterm-mouse-mode doesn't work on the Gnome terminal.
 
 A symptom of this bug is that double-clicks insert a control sequence
@@ -1077,7 +1141,7 @@ present or commented out:
 
 This is caused by a bug in the KDE applet `klipper' which periodically
 requests the X clipboard contents from applications.  Early versions
-of klipper don't implement the ICCM protocol for large selections,
+of klipper don't implement the ICCCM protocol for large selections,
 which leads to Emacs being flooded with selection requests.  After a
 while, Emacs may print a message:
 
@@ -1187,6 +1251,10 @@ resources to load all the colors it needs.
 
 A solution is to exit the offending X programs before starting Emacs.
 
+"undefined color" messages can also occur if the RgbPath entry in the
+X configuration file is incorrect, or the rgb.txt file is not where
+X expects to find it.
+
 *** Improving performance with slow X connections.
 
 There are several ways to improve this performance, any subset of which can
@@ -1199,7 +1267,20 @@ be carried out at the same time:
    package.
 
 2) If the connection is very slow, you might also want to consider
-   switching off scroll bars, menu bar, and tool bar.
+   switching off scroll bars, menu bar, and tool bar.  Adding the
+   following forms to your .emacs file will accomplish that, but only
+   after the the initial frame is displayed:
+
+    (scroll-bar-mode -1)
+    (menu-bar-mode -1)
+    (tool-bar-mode -1)
+
+   For still quicker startup, put these X resources in your .Xdefaults
+   file:
+
+    Emacs.verticalScrollBars: off
+    Emacs.menuBar: off
+    Emacs.toolBar: off
 
 3) Use ssh to forward the X connection, and enable compression on this
    forwarded X connection (ssh -XC remotehostname emacs ...).
@@ -1216,6 +1297,11 @@ be carried out at the same time:
    For more about lbxproxy, see:
    http://www.xfree86.org/4.3.0/lbxproxy.1.html
 
+5) If copying and killing is slow, try to disable the interaction with the
+   native system's clipboard by adding these lines to your .emacs file:
+     (setq interprogram-cut-function nil)
+     (setq interprogram-paste-function nil)
+
 *** Emacs gives the error, Couldn't find per display information.
 
 This can result if the X server runs out of memory because Emacs uses
@@ -1650,7 +1736,7 @@ keys can serve as Meta.
 The `xkeycaps' also shows a visual representation of the current
 keyboard settings.  It also allows to modify them.
 
-*** GNU/Linux: low startup on Linux-based GNU systems.
+*** GNU/Linux: slow startup on Linux-based GNU systems.
 
 People using systems based on the Linux kernel sometimes report that
 startup takes 10 to 15 seconds longer than `usual'.
@@ -1744,6 +1830,13 @@ There appears to be a problem with the implementation of pty's on the
 Mac OS X that causes process output to be truncated.  To avoid this,
 leave process-connection-type set to its default value of nil.
 
+*** Mac OS X 10.3.9 (Carbon): QuickTime 7.0.4 updater breaks build.
+
+On the above environment, build fails at the link stage with the
+message like "Undefined symbols: _HICopyAccessibilityActionDescription
+referenced from QuickTime expected to be defined in Carbon".  A
+workaround is to use QuickTime 7.0.1 reinstaller.
+
 ** FreeBSD
 
 *** FreeBSD 2.1.5: useless symbolic links remain in /tmp or other
@@ -1971,13 +2064,28 @@ to allocate ptys reliably.
 
 * Runtime problems specific to MS-Windows
 
+** Windows 95 and networking.
+
+To support server sockets, Emacs 22.1 loads ws2_32.dll.  If this file
+is missing, all Emacs networking features are disabled.
+
+Old versions of Windows 95 may not have the required DLL.  To use
+Emacs' networking features on Windows 95, you must install the
+"Windows Socket 2" update available from MicroSoft's support Web.
+
 ** Emacs exits with "X protocol error" when run with an X server for MS-Windows.
 
 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.
 
-** Known problems with the MS-Windows port of Emacs 21.2.
+** Known problems with the MS-Windows port of Emacs 22.1
+
+Using create-fontset-from-ascii-font or the --font startup parameter
+with a Chinese, Japanese or Korean font leads to display problems.
+Use a Latin-only font as your default font. If you want control over
+which font is used to display Chinese, Japanese or Korean character,
+use create-fontset-from-fontset-spec to define a fontset.
 
 Frames are not refreshed while the File or Font dialog or a pop-up menu
 is displayed. This also means help text for pop-up menus is not
@@ -1997,13 +2105,10 @@ after moving back into it.
 Some minor flickering still persists during mouse-tracking, although
 not as severely as in 21.1.
 
-Emacs can sometimes abort when non-ASCII text, possibly with null
-characters, is copied and pasted into a buffer.
-
 An inactive cursor remains in an active window after the Windows
 Manager driven switch of the focus, until a key is pressed.
 
-Windows input methods are not recognized by Emacs (as of v21.2).  Some
+Windows input methods are not recognized by Emacs.  Some
 of these input methods cause the keyboard to send characters encoded
 in the appropriate coding system (e.g., ISO 8859-1 for Latin-1
 characters, ISO 8859-8 for Hebrew characters, etc.).  To make this
@@ -2027,6 +2132,34 @@ and Shift, the Alt and Shift act as modifiers in the usual way.  A
 more permanent work around is to change it to another key combination,
 or disable it in the keyboard control panel.
 
+** Cygwin build of Emacs hangs after rebasing Cygwin DLLs
+
+Usually, on Cygwin, one needs to rebase the DLLs if an application
+aborts with a message like this:
+
+  C:\cygwin\bin\python.exe: *** unable to remap C:\cygwin\bin\cygssl.dll to
+  same address as parent(0xDF0000) != 0xE00000
+
+However, since Cygwin DLL 1.5.17 was released, after such rebasing,
+Emacs hangs.
+
+This was reported to happen for Emacs 21.2 and also for the pretest of
+Emacs 22.1 on Cygwin.
+
+To work around this, build Emacs like this:
+
+  LDFLAGS='-Wl,--enable-auto-import -Wl,--enable-auto-image-base' ./configure
+  make LD='$(CC)'
+  make LD='$(CC)' install
+
+This produces an Emacs binary that is independent of rebasing.
+
+Note that you _must_ use LD='$(CC)' in the last two commands above, to
+prevent GCC from passing the "--image-base 0x20000000" option to the
+linker, which is what it does by default.  That option produces an
+Emacs binary with the base address 0x20000000, which will cause Emacs
+to hang after Cygwin DLLs are rebased.
+
 ** Interrupting Cygwin port of Bash from Emacs doesn't work.
 
 Cygwin 1.x builds of the ported Bash cannot be interrupted from the
@@ -2239,7 +2372,26 @@ This results from a bug in a VERY old version of GNU Sed.  To solve
 the problem, install the current version of GNU Sed, then rerun
 Emacs's configure script.
 
-*** Building the MS-Windows port with Cygwin GCC can fail.
+*** Building a 32-bit executable on a 64-bit GNU/Linux architecture.
+
+First ensure that the necessary 32-bit system libraries and include
+files are installed. Then use:
+
+  env CC="gcc -m32" ./configure --build=i386-linux-gnu \
+    --x-libraries=/usr/X11R6/lib
+
+(using the location of the 32-bit X libraries on your system).
+
+*** Building the Cygwin port for MS-Windows can fail with some GCC version
+
+Building Emacs 22 with Cygwin builds of GCC 3.4.4-1 and 3.4.4-2 is
+reported to either fail or cause Emacs to segfault at run time.  In
+addition, the Cygwin GCC 3.4.4-2 has problems with generating debug
+info.  Cygwin users are advised not to use these versions of GCC for
+compiling Emacs.  GCC versions 4.0.3 and 4.1.1 reportedly build a
+working Cygwin binary of Emacs, so we recommend these GCC versions.
+
+*** Building the native MS-Windows port with Cygwin GCC can fail.
 
 Emacs may not build using recent Cygwin builds of GCC, such as Cygwin
 version 1.1.8, using the default configure settings.  It appears to be
@@ -2408,7 +2560,7 @@ command when running temacs like this:
 
     setarch i386 ./temacs --batch --load loadup [dump|bootstrap]
 
+
 *** Fedora Core 4 GNU/Linux: Segfault during dumping.
 
 In addition to exec-shield explained above "Linux: Segfault during
@@ -2418,11 +2570,11 @@ address space of a process. As the result dumping may fail even if
 you turn off exec-shield. In this case, use the -R option to the setarch
 command:
 
-   setarch -R i386 ./temacs --batch --load loadup [dump|bootstrap]
+   setarch i386 -R ./temacs --batch --load loadup [dump|bootstrap]
 
 or
 
-   setarch -R i386 make bootstrap      
+   setarch i386 -R make bootstrap
 
 *** Fatal signal in the command  temacs -l loadup inc dump.
 
@@ -3561,8 +3713,8 @@ This problem will not happen if the m-...h file for your type
 of machine defines NO_UNION_TYPE.
 
 \f
-Copyright 1987,88,89,93,94,95,96,97,98,1999,2001,2002,2004
-  Free Software Foundation, Inc.
+Copyright (C) 1987, 1988, 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+   2001, 2002, 2003, 2004, 2005, 2006, 2007  Free Software Foundation, Inc.
 
 Copying and redistribution of this file with or without modification
 are permitted without royalty provided this notice is preserved.