Mercurial > emacs
comparison =PROBLEMS @ 2860:c93004d53e7a
* PROBLEMS: Some updates from David J. Mackenzie.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Tue, 18 May 1993 20:33:05 +0000 |
parents | 8e274cb78360 |
children | 507f64624555 |
comparison
equal
deleted
inserted
replaced
2859:422fbc398a11 | 2860:c93004d53e7a |
---|---|
61 | 61 |
62 This means that the file `etc/DOC-...' doesn't properly correspond | 62 This means that the file `etc/DOC-...' doesn't properly correspond |
63 with the Emacs executable. Redumping Emacs and then installing the | 63 with the Emacs executable. Redumping Emacs and then installing the |
64 corresponding pair of files should fix the problem. | 64 corresponding pair of files should fix the problem. |
65 | 65 |
66 * M-x shell immediately responds "Process shell exited abnormally with code 1". | |
67 | |
68 This is often due to inability to run the program `env'. | |
69 This should be in the `etc' subdirectory of the directory | |
70 where Emacs is installed, and it should be marked executable. | |
71 | |
72 * Trouble using ptys on AIX. | 66 * Trouble using ptys on AIX. |
73 | 67 |
74 People often instll the pty devices on AIX incorrectly. | 68 People often instll the pty devices on AIX incorrectly. |
75 Use `smit pty' to reinstall them properly. | 69 Use `smit pty' to reinstall them properly. |
76 | 70 |
165 | 159 |
166 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file | 160 if ( ! ${?TERMCAP} ) setenv TERMCAP ~/my-termcap-file |
167 | 161 |
168 Or you could set TERMCAP only when you set TERM--which should not | 162 Or you could set TERMCAP only when you set TERM--which should not |
169 happen in a non-login shell. | 163 happen in a non-login shell. |
170 | |
171 * Error compiling sysdep.c, "sioctl.h: no such file or directory". | |
172 | |
173 Among USG systems with TIOCGWINSZ, some require sysdep.c to include | |
174 the file sioctl.h; on others, sioctl.h does not exist. We don't know | |
175 how to distinguish these two kind of systems, so currently we try to | |
176 include sioctl.h on all of them. If this #include gets an error, just | |
177 delete it. | |
178 | 164 |
179 * X Windows doesn't work if DISPLAY uses a hostname. | 165 * X Windows doesn't work if DISPLAY uses a hostname. |
180 | 166 |
181 People have reported kernel bugs in certain systems that cause Emacs | 167 People have reported kernel bugs in certain systems that cause Emacs |
182 not to work with X Windows if DISPLAY is set using a host name. But | 168 not to work with X Windows if DISPLAY is set using a host name. But |
253 when unpacking the shell archive. | 239 when unpacking the shell archive. |
254 | 240 |
255 I have also seen character \177 changed into \377. I do not know | 241 I have also seen character \177 changed into \377. I do not know |
256 what transfer means caused this problem. Various network | 242 what transfer means caused this problem. Various network |
257 file transfer programs are suspected of clobbering the high bit. | 243 file transfer programs are suspected of clobbering the high bit. |
258 | |
259 The only verified ways to transfer GNU Emacs are `tar', kermit (in | |
260 binary mode on Unix), and rcp or internet ftp between two Unix systems, | |
261 or chaosnet cftp using raw mode. | |
262 | 244 |
263 If you have a copy of Emacs that has been damaged in its | 245 If you have a copy of Emacs that has been damaged in its |
264 nonprinting characters, you can fix them: | 246 nonprinting characters, you can fix them: |
265 | 247 |
266 1) Record the names of all the .elc files. | 248 1) Record the names of all the .elc files. |
311 You may have forgotten to recompile them into .elc files. | 293 You may have forgotten to recompile them into .elc files. |
312 Then the old .elc files will be loaded, and your changes | 294 Then the old .elc files will be loaded, and your changes |
313 will not be seen. To fix this, do M-x byte-recompile-directory | 295 will not be seen. To fix this, do M-x byte-recompile-directory |
314 and specify the directory that contains the Lisp files. | 296 and specify the directory that contains the Lisp files. |
315 | 297 |
298 Emacs should print a warning when loading a .elc file which is older | |
299 than the corresponding .el file. | |
300 | |
316 * The dumped Emacs (xemacs) crashes when run, trying to write pure data. | 301 * The dumped Emacs (xemacs) crashes when run, trying to write pure data. |
317 | 302 |
318 Two causes have been seen for such problems. | 303 Two causes have been seen for such problems. |
319 | 304 |
320 1) On a system where getpagesize is not a system call, it is defined | 305 1) On a system where getpagesize is not a system call, it is defined |
449 give it. You are screwed! You should replace the terminal or | 434 give it. You are screwed! You should replace the terminal or |
450 concentrator with a properly designed one. In the mean time, | 435 concentrator with a properly designed one. In the mean time, |
451 some drastic measures can make Emacs semi-work. | 436 some drastic measures can make Emacs semi-work. |
452 | 437 |
453 One drastic measure to ignore C-s and C-q, while sending enough | 438 One drastic measure to ignore C-s and C-q, while sending enough |
454 padding that the terminal will not really lose any output. | 439 padding that the terminal will not really lose any output. To make |
455 Ignoring C-s and C-q can be done by using keyboard-translate-table | 440 such an adjustment, you need only invoke the function |
456 to map them into an undefined character such as C-^ or C-\. Sending | 441 enable-flow-control-on with a list of terminal types in your own |
457 lots of padding is done by changing the termcap entry. Here is how | 442 .emacs file. As arguments, give it the names of one or more terminal |
458 to make such a keyboard-translate-table: | 443 types you use which require flow control adjustments. |
459 | 444 Here's an example: |
460 (let ((the-table (make-string 128 0))) | 445 |
461 ;; Default is to translate each character into itself. | 446 (enable-flow-control-on "vt200" "vt300" "vt101" "vt131") |
462 (let ((i 0)) | |
463 (while (< i 128) | |
464 (aset the-table i i) | |
465 (setq i (1+ i)))) | |
466 ;; Swap C-s with C-\ | |
467 (aset the-table ?\C-\\ ?\C-s) | |
468 (aset the-table ?\C-s ?\C-\\) | |
469 ;; Swap C-q with C-^ | |
470 (aset the-table ?\C-^ ?\C-q) | |
471 (aset the-table ?\C-q ?\C-^) | |
472 (setq keyboard-translate-table the-table)) | |
473 | 447 |
474 An even more drastic measure is to make Emacs use flow control. | 448 An even more drastic measure is to make Emacs use flow control. |
475 To do this, evaluate the Lisp expression (set-input-mode nil t). | 449 To do this, evaluate the Lisp expression (set-input-mode nil t). |
476 Emacs will then interpret C-s and C-q as flow control commands. (More | 450 Emacs will then interpret C-s and C-q as flow control commands. (More |
477 precisely, it will allow the kernel to do so as it usually does.) You | 451 precisely, it will allow the kernel to do so as it usually does.) You |
689 ! if (syscall == RSYS_close) | 663 ! if (syscall == RSYS_close) |
690 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]); | 664 proc->p_returnval = deallocate_fd(proc, msg->m_args[0]); |
691 else | 665 else |
692 { | 666 { |
693 | 667 |
694 * ld complains because `alloca' is not defined on your system. | |
695 | |
696 Alloca is a library function in 4.2bsd, which is used very heavily by | |
697 GNU Emacs. Use of malloc instead is very difficult, as you would have | |
698 to arrange for the storage to be freed, and do so even in the case of | |
699 a longjmp happening inside a subroutine. Many subroutines in Emacs | |
700 can do longjmp. | |
701 | |
702 If your system does not support alloca, try defining the symbol | |
703 C_ALLOCA in the m-...h file for that machine. This will enable the use | |
704 in Emacs of a portable simulation for alloca. But you will find that | |
705 Emacs's performance and memory use improve if you write a true | |
706 alloca in assembler language. | |
707 | |
708 alloca (N) should return the address of an N-byte block of memory | |
709 added dynamically to the current stack frame. | |
710 | |
711 * Vax C compiler bugs affecting Emacs. | 668 * Vax C compiler bugs affecting Emacs. |
712 | 669 |
713 You may get one of these problems compiling Emacs: | 670 You may get one of these problems compiling Emacs: |
714 | 671 |
715 foo.c line nnn: compiler error: no table entry for op STASG | 672 foo.c line nnn: compiler error: no table entry for op STASG |
776 This problem will not happen if the m-...h file for your type | 733 This problem will not happen if the m-...h file for your type |
777 of machine defines NO_UNION_TYPE. That is the recommended setting now. | 734 of machine defines NO_UNION_TYPE. That is the recommended setting now. |
778 | 735 |
779 * C compilers lose on returning unions | 736 * C compilers lose on returning unions |
780 | 737 |
781 I hear that some C compilers cannot handle returning | 738 I hear that some C compilers cannot handle returning a union type. |
782 a union type. Most of the functions in GNU Emacs return | 739 Most of the functions in GNU Emacs return type Lisp_Object, which is |
783 type Lisp_Object, which is currently defined as a union. | 740 defined as a union on some rare architectures. |
784 | 741 |
785 This problem will not happen if the m-...h file for your type | 742 This problem will not happen if the m-...h file for your type |
786 of machine defines NO_UNION_TYPE. That is the recommended setting now. | 743 of machine defines NO_UNION_TYPE. |
787 | 744 |