Commit | Line | Data |
---|---|---|
2e493ffe | 1 | This is a list of the status of GNU Emacs on various machines and systems. |
77d78be1 | 2 | |
cbd6b57c JB |
3 | For each system and machine, we give the configuration name you should |
4 | pass to the `configure' script to prepare to build Emacs for that | |
5 | system/machine. | |
77d78be1 | 6 | |
cbd6b57c JB |
7 | The `configure' script uses the configuration name to decide which |
8 | machine and operating system description files `src/config.h' should | |
9 | include. The machine description files are all in `src/m', and have | |
10 | names similar to, but not identical to, the machine names used in | |
11 | configuration names. The operating system files are all in `src/s', | |
12 | and are named similarly. See the `configure' script if you need to | |
13 | know which configuration names use which machine and operating system | |
14 | description files. | |
2e493ffe | 15 | |
da33ff57 JB |
16 | If you add support for a new configuration, add a section to this |
17 | file, and then edit the `configure' script to tell it which | |
18 | configuration name(s) should select your new machine description and | |
19 | system description files. | |
2e493ffe | 20 | |
2e493ffe | 21 | \f |
cbd6b57c JB |
22 | Here are the configurations Emacs is intended to work with, with the |
23 | corresponding configuration names. You can postpend version numbers | |
24 | to operating system names (i.e. sunos4.1) or architecture names (i.e. | |
25 | hppa1.1). If you leave out the version number, the `configure' script | |
26 | will configure Emacs for the latest version it knows about. | |
2e493ffe | 27 | |
a7bfd66f DL |
28 | Acorn RISCiX (arm-acorn-riscix1.2) |
29 | ||
30 | Emacs 19.29 has changes that ought to support RISCiX 1.2. | |
31 | ||
32 | Due to a bug in the RISCiX C compiler (3.4.5), emacs must | |
33 | be built with gcc (versions 2.5.8 onwards). | |
34 | ||
35 | In addition, you will need GNU sed and GNU make, as the RISCiX release | |
36 | versions of these utilities cannot cope with building emacs-19! | |
37 | ||
38 | GNU sed should be configured with: | |
39 | ||
40 | env 'DEFS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ | |
41 | -Doptarg=gnu_optarg' ./configure | |
42 | ||
43 | GNU make (3.72+) should be configured with: | |
44 | ||
45 | env 'CFLAGS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ | |
46 | -Doptarg=gnu_optarg' ./configure | |
47 | ||
48 | Emacs may be configured to use the X toolkit, by adding --with-x-toolkit | |
49 | to the configure command. If you do this, you will need to edit the line | |
50 | in src/Makefile which defines LIBW (about line 59) to read: | |
51 | ||
52 | LIBW= -lXaw_n | |
53 | ||
54 | This ensures that the non-shared widget library is used. | |
55 | ||
56 | It is unlikely that this version of emacs will work with RISCiX 1.1. | |
57 | ||
cbd6b57c | 58 | Alliant (fx80-alliant-bsd): |
2e493ffe | 59 | |
52f8dbf8 | 60 | 18.52 worked on system version 4. Previous Emacs versions were |
2e493ffe JB |
61 | known to work on previous system versions. |
62 | ||
cbd6b57c JB |
63 | If you are using older versions of their operating system, you may |
64 | need to edit `src/config.h' to use `m/alliant1.h' (on version 1) or | |
65 | `m/alliant.h' (on versions 2 and 3). | |
77d78be1 | 66 | |
cbd6b57c | 67 | Alliant FX/2800 (i860-alliant-bsd) |
77d78be1 | 68 | |
a7bfd66f DL |
69 | Known to work with 19.26 and OS version 2.2, compiler version 1.3. |
70 | ||
71 | Alpha (DEC) running OSF/1 (alpha-dec-osf1, alpha-dec-linux-gnu) | |
72 | ||
73 | For OSF/1 (aka Digital Unix) version 4.0, update 386, | |
74 | it is reported that you need to run configure this way: | |
75 | ||
76 | configure --x-includes=/usr/include --x-libraries=/usr/shlib | |
77 | ||
78 | For 4.0 revision 564, and 4.0A and 4.0B, Emacs 20 seems to work | |
79 | with no special configuration options. | |
80 | ||
81 | Note that the X11 libraries on GNU/Linux systems | |
82 | for the Alpha are said to have bugs that prevent Emacs from working with X | |
83 | (as of November 1995). | |
2e493ffe | 84 | |
cbd6b57c | 85 | Altos 3068 (m68k-altos-sysv) |
2e493ffe | 86 | |
52f8dbf8 | 87 | 18.52 was said to work, provided you don't compile unexec.c with -O. |
2e493ffe | 88 | |
cbd6b57c | 89 | Amdahl UTS (580-amdahl-sysv) |
2e493ffe JB |
90 | |
91 | Small changes for 18.38 were merged in 18.39. It is mostly | |
92 | working, but at last report a bug sometimes causes Emacs to | |
93 | grab very large amounts of memory. No fix or explanation | |
94 | has yet been reported. It may be possible to find this bug | |
95 | if you find which Emacs command it happens within and then | |
96 | run that command with a breakpoint set at malloc. | |
97 | ||
98 | The 5.2u370 compiler is so brain damaged that it is not | |
99 | even worth trying to use it. Success was obtained with the | |
100 | uts native C compiler on uts version 5.2.5. | |
101 | ||
a7bfd66f | 102 | Apollo running X Windows (m68k-apollo-bsd) |
2e493ffe | 103 | |
a7bfd66f DL |
104 | Apollo version now supports dumping. It has been tested on SR10.3 and |
105 | SR10.4. It certainly requires at least SR10.0, and maybe SR10.2. Be sure | |
106 | to build in the BSD environment. | |
2e493ffe | 107 | |
a7bfd66f DL |
108 | By default, everything is compiled with the switch "-W0,-opt,2". Don't try |
109 | to change this to full optimization (-O). The full optimizer (in Domain CC | |
110 | 6.7, 6.8 and 6.9) generates some bad code in several modules which causes | |
111 | the emacs window, under X, to be refreshed with each keystroke. | |
2e493ffe | 112 | |
a7bfd66f DL |
113 | The configuration stuff should work for the most part. However, some Domain |
114 | installations may have to edit src/Makefile manually after it is created. | |
115 | There are too many versions of both cc and X to automate this easily. | |
2e493ffe | 116 | |
a7bfd66f DL |
117 | In `lib-src/Makefile', emacsclient and emacsserver compile and work fine |
118 | under CC 6.9. They now probably work under other versions of the compiler, | |
119 | as well. | |
52f8dbf8 | 120 | |
a7bfd66f DL |
121 | The Apollo Domain CC compiler will issue quite a few warning messages, |
122 | mostly complaining about incompatible pointers. In general, these are | |
123 | harmless and can be ignored. If you discover otherwise, please submit a bug | |
124 | report identifying the problem in detail. | |
52f8dbf8 | 125 | |
a7bfd66f DL |
126 | When you try to dump emacs, you may get the message ".rwdi section needs |
127 | relocation." This means you are linking with some code that has compressed | |
128 | data sections. In some cases this comes from linking with X libraries. Try | |
129 | using shared X libraries instead. With some versions of Domain/OS this is | |
130 | as simple as removing the "-lX11" from the LIBX line in src/Makefile. | |
131 | ||
132 | When running the configure script, use the configuration name | |
133 | "m68k-apollo-bsd". You will also need to use the "-with-gcc=no" and | |
134 | "-with-x" options. Depending upon your site configuration, you may have to | |
135 | use other configure options, as well. Examine the INSTALL file for other | |
136 | configure options. | |
52f8dbf8 | 137 | |
a7bfd66f | 138 | Check out the file 'lisp/x-apollo.el'. To use it, add |
52f8dbf8 | 139 | |
a7bfd66f | 140 | (load "x-apollo") |
52f8dbf8 | 141 | |
a7bfd66f DL |
142 | to your .emacs file. It provides useful default Apollo function key |
143 | bindings. | |
52f8dbf8 | 144 | |
cbd6b57c | 145 | AT&T 3b2, 3b5, 3b15, 3b20 (we32k-att-sysv) |
2e493ffe JB |
146 | |
147 | Emacs will probably not work with certain kernel constants too small. | |
148 | ||
149 | In param.h CDLIMIT should be at least (1L << 12) in order to allow | |
52f8dbf8 | 150 | processes to write up to 2 Mbyte files. This parameter is configurable |
2e493ffe JB |
151 | by normal means in /etc/master.d/kernel; examine that file for the |
152 | symbol CDLIMIT or ULIMIT, and raise it by several powers of 2. Then | |
153 | do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so | |
52f8dbf8 | 154 | forth. |
2e493ffe JB |
155 | |
156 | In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively | |
157 | to allow processes with total size of up to 2Mbytes. | |
158 | However, I'm told it is unlikely this would fail to be true. | |
159 | ||
160 | The MAXMEM may also prevent Emacs from running. The file | |
161 | 3B-MAXMEM in this directory explains how to increase MAXMEM. | |
162 | ||
a7bfd66f DL |
163 | On some of these machines, you may need to define IN_SCCS_ID |
164 | in config.h to make Emacs work. Supposedly you can tell whether | |
165 | this is necessary by checking something in /usr/include/sys/time.h; | |
166 | we do not know precisely what. | |
167 | ||
cbd6b57c | 168 | AT&T 7300 or 3b1 (m68k-att-sysv) |
2e493ffe | 169 | |
52f8dbf8 | 170 | 18.52 worked. If you have strange troubles with dumping |
cbd6b57c | 171 | Emacs, delete the last few lines from `src/m/7300.h' and recompile. |
77d78be1 | 172 | These lines are supposed to produce a sharable executable. |
2e493ffe | 173 | |
cbd6b57c | 174 | `src/m/7300.h' defines SHORTNAMES because operating system versions |
2e493ffe | 175 | older than 3.5 did not support long symbol names. Version 3.5 does |
77d78be1 JB |
176 | support them, so you can remove the #define SHORTNAMES in that |
177 | version. | |
2e493ffe | 178 | |
a7bfd66f DL |
179 | Bull DPX/2 models 2nn or 3nn (m68k-bull-sysv3) |
180 | ||
181 | Minor fixes merged into 19.19, which should work with CC or GCC. | |
182 | ||
183 | You should compile with all the POSIX stuff: undef _SYSV and define | |
184 | _POSIX_SOURCE, _XOPEN_SOURCE and _BULL_SOURCE. | |
185 | ||
186 | On bos2.00.45 there is a bug that makes the F_SETOWN fcntl | |
187 | call enters in an infinite loop. F_SETOWN_BUG has been defined to avoid | |
188 | calling it. | |
189 | ||
190 | Bull DPX/20 (rs6000-bull-bosx) | |
191 | ||
192 | Version 19 works. | |
193 | ||
194 | Bull sps7 (m68k-bull-sysv2) | |
2e493ffe JB |
195 | |
196 | Changes partially merged in version 19, but some fixes are probably required. | |
197 | ||
198 | CCI 5/32, 6/32 | |
199 | ||
200 | See "Tahoe". | |
201 | ||
cbd6b57c JB |
202 | Celerity (celerity-celerity-bsd4.2) |
203 | ||
52f8dbf8 | 204 | Version 18.49 worked. This configuration name is a hack, because we |
cbd6b57c JB |
205 | don't know the processor used by Celerities. If someone |
206 | who uses a Celerity could get in touch with us, we can teach | |
207 | config.sub a better name for the configuration. | |
2e493ffe | 208 | |
cbd6b57c | 209 | Clipper (clipper-???) |
2e493ffe | 210 | |
cbd6b57c JB |
211 | Version 19 has support for some brand of clipper system. If you |
212 | have successfully built Emacs 19 on some sort of clipper system, let | |
213 | us know so we can flesh out this entry. | |
2e493ffe | 214 | |
2e493ffe JB |
215 | Note that the Orion 105 is also a clipper, but some system-related |
216 | parameters are different. | |
217 | ||
cbd6b57c JB |
218 | Convex (c1-convex-bsd, c2-convex-bsd, c32-convex-bsd, c34-convex-bsd, |
219 | c38-convex-bsd) | |
2e493ffe | 220 | |
a7bfd66f | 221 | Support updated and residual bugs fixed in 19.26. |
2e493ffe | 222 | |
cbd6b57c | 223 | Cubix QBx/386 (i386-cubix-sysv) |
2e493ffe JB |
224 | |
225 | Changes merged in 19.1. Systems before 2/A/0 may fail to compile etags.c | |
226 | due to a compiler bug. | |
227 | ||
cbd6b57c | 228 | Cydra 5 (cydra-cydrome-sysv) |
2e493ffe JB |
229 | |
230 | 18.51 worked in one version of their operating system but stopped | |
231 | working in a newer version. This has not been fixed. | |
232 | ||
a7bfd66f DL |
233 | Data General Aviion (m88k-dg-dgux) |
234 | ||
235 | 19.23 works; however, the GCC provided with DGUX 5.4R3.00 fails to | |
236 | compile src/emacs.c. GCC 2.5.8 does work. | |
237 | The 19.26 pretest was reported to work; no word on which compiler. | |
238 | System versions other than DGUX 5.4R3.00 have not been tested. | |
239 | ||
240 | DGUX 5.4R3.10 works with 19.29 and 19.30. | |
241 | ||
242 | DGUX R4.11 contains changes to the stdio internals and it doesn't work | |
243 | with versions before 20.2 without patches. 20.2 works in interactive | |
244 | mode but usually fails in batch mode. The problem is that using | |
245 | stderr in the dumped emacs usually leads to a segmentation fault. | |
246 | Only m88k has been tested. | |
247 | ||
cbd6b57c | 248 | DECstation (mips-dec-ultrix or mips-dec-osf) |
b7cceaf1 | 249 | |
a7bfd66f DL |
250 | This machine is the older Mips-based DECstation. |
251 | Emacs should now work on the Alpha CPU. | |
252 | ||
253 | 19.25 works on Ultrix 4.2. The 19.26 pretest was reported to work | |
254 | on Ultrix 4.2a and on 4.4. | |
255 | ||
256 | One user reported 19.25 did not work at all with --with-x-toolkit | |
257 | using X11R5 patch level 10, but worked ok with X11R5 pl26. | |
b7cceaf1 JB |
258 | |
259 | See under Ultrix for problems using X windows on Ultrix. | |
260 | Note that this is a MIPS machine. | |
2e493ffe | 261 | |
64d8c7fb | 262 | For Ultrix versions 4.1 or earlier, you may need to define |
cbd6b57c | 263 | SYSTEM_MALLOC in `src/m/pmax.h', because XvmsAlloc.o in libX11.a seems |
64d8c7fb JB |
264 | to insist on defining malloc itself. |
265 | ||
77d78be1 | 266 | For Ultrix versions prior to 4.0, you may need to delete |
cbd6b57c | 267 | the definition of START_FILES from `src/m/pmax.h'. |
2e493ffe | 268 | |
cbd6b57c | 269 | Motorola Delta 147 (m68k-motorola-sysv) |
2e493ffe | 270 | |
a7bfd66f DL |
271 | The EMacs 19.26 pretest was reported to work. |
272 | ||
2e493ffe | 273 | Motorola Delta boxes running System V/68 release 3. |
a7bfd66f DL |
274 | Tested on 147 board with SVR3V7, no X and gcc. |
275 | Tested on 167 board with SVR3V7, no X, cc, gnucc and gcc. | |
276 | Reports say it works with X too. | |
277 | ||
278 | The installation script chooses the compiler itself. gnucc is | |
279 | preferred. | |
2e493ffe | 280 | |
a7bfd66f DL |
281 | Motorola Delta 187 (m88k-motorola-sysv, |
282 | m88k-motorola-sysvr4, or | |
283 | m88k-motorola-m88kbcs) | |
77d78be1 | 284 | |
a7bfd66f DL |
285 | The 19.26 pretest was reported to run on SVR3. However, if you |
286 | use --with-x-toolkit on svr3, you will have problems compiling some | |
287 | files because time.h and sys/time.h get included twice. | |
288 | One fix is to edit those files to protect against multiple inclusion. | |
289 | ||
290 | As of version 19.13, Emacs was reported to run under SYSVr3 and SYSVr4. | |
77d78be1 | 291 | |
cbd6b57c | 292 | Dual running System V (m68k-dual-sysv) |
2e493ffe | 293 | |
52f8dbf8 | 294 | As of 17.46, this worked except for a few changes |
2e493ffe JB |
295 | needed in unexec.c. |
296 | ||
cbd6b57c | 297 | Dual running Uniplus (m68k-dual-uniplus) |
2e493ffe | 298 | |
52f8dbf8 | 299 | Worked, as of 17.51. |
2e493ffe | 300 | |
cbd6b57c | 301 | Elxsi 6400 (elxsi-elxsi-sysv) |
2e493ffe JB |
302 | |
303 | Changes for 12.0 release are in 19.1. | |
304 | Dumping should work now. | |
305 | ||
cbd6b57c | 306 | Encore machine (ns16k-encore-bsd) |
2e493ffe JB |
307 | |
308 | This machine bizarrely uses 4.2BSD modified to use the COFF format | |
309 | for object files. Works (as of 18.40). For the APC processor you | |
cbd6b57c | 310 | must enable two lines at the end of `src/s/umax.h', which are commented |
2e493ffe JB |
311 | out in the file as distributed. |
312 | ||
313 | WARNING: If you compile Emacs with the "-O" compiler switch, you | |
314 | must also use the "-q enter_exits" switch so that all functions have | |
315 | stack frames. Otherwise routines that call `alloca' all lose. | |
316 | ||
317 | A kernel bug in some system versions causes input characters to be lost | |
318 | occasionally. | |
319 | ||
a7bfd66f DL |
320 | Fujitsu DS/90 (sparc-fujitsu-sysv4) |
321 | ||
322 | Changes merged in 20.3. | |
323 | ||
cbd6b57c | 324 | GEC 63 (local-gec63-usg5.2) |
2e493ffe | 325 | |
cbd6b57c JB |
326 | Changes are partially merged in version 18, but certainly require |
327 | more work. Let us know if you get this working, and we'll give it a | |
328 | real configuration name. | |
2e493ffe | 329 | |
cbd6b57c | 330 | Gould Power Node (pn-gould-bsd4.2 or pn-gould-bsd4.3) |
2e493ffe JB |
331 | |
332 | 18.36 worked on versions 1.2 and 2.0 of the operating system. | |
333 | ||
cbd6b57c | 334 | On UTX/32 2.0, use pn-gould-bsd4.3. |
2e493ffe | 335 | |
cbd6b57c JB |
336 | On UTX/32 1.2 and UTX/32S 1.0, use pn-gould-bsd4.2 and note that |
337 | compiling `lib-src/sorted-doc' tickles a compiler bug: remove the -g | |
77d78be1 | 338 | flag to cc in the makefile. |
2e493ffe JB |
339 | |
340 | UTX/32 1.3 has a bug in the bcopy library routine. Fix it by | |
cbd6b57c | 341 | #undef BSTRING in `src/m/gould.h'. |
2e493ffe JB |
342 | |
343 | Version 19 incorporates support for releases 2.1 and later of UTX/32. | |
344 | A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h. | |
345 | ||
cbd6b57c | 346 | Gould NP1 (np1-gould-bsd) |
2e493ffe JB |
347 | |
348 | Version 19 supposedly works. | |
349 | ||
a7bfd66f DL |
350 | Harris Night Hawk (m68k-harris-cxux or m88k-harris-cxux) |
351 | ||
352 | This port was added in 19.23. The configuration actually tested was | |
353 | a Night Hawk 4800 running CX/UX 7.0. | |
354 | ||
355 | If you have GCC ported and want to build with it, you probably need to | |
356 | change things (like compiler switches) defined in the s/cxux.h file. | |
357 | ||
358 | If you have X11R6 installed in /usr/lib, configure will fail to find | |
359 | it and may find X11R5 instead. To work around this problem, use | |
360 | --x-libraries=/usr/lib when you run configure. | |
361 | ||
362 | With CX/UX 7.0 and later releases, you need to build after setting the | |
363 | SDE_TARGET environment variable to COFF (a port using ELF and shared | |
364 | libraries has not yet been done). | |
365 | ||
366 | Harris Power PC (powerpc-harris-powerunix) | |
367 | ||
368 | Patches have been merged in 19.31. | |
369 | ||
cbd6b57c | 370 | Honeywell XPS100 (xps100-honeywell-sysv) |
2e493ffe JB |
371 | |
372 | Config file added in version 19. | |
373 | ||
a7bfd66f DL |
374 | Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux |
375 | or m68k-hp-netbsd) | |
2e493ffe | 376 | |
a7bfd66f | 377 | These machines are 68000-series CPUs running HP/UX |
2e493ffe | 378 | (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah. |
cbd6b57c | 379 | The operating system suffix determines which system Emacs is built for. |
2e493ffe | 380 | |
a7bfd66f DL |
381 | Series 200 HPUX runs Emacs only if it has the "HP/UX upgrade". |
382 | ||
383 | Version 19 works under BSD. The 19.26 pretest was reported | |
384 | to work on HPUX 9. 19.31 works on HPUX 10.01, but there are | |
385 | some problems on 10.10 which have not been resolved. Emacs 19.34 | |
386 | works on HPUX 10.20 provided you compile with GCC; with the HP C | |
387 | compiler, subprocess commands do not work. | |
388 | ||
389 | On HPUX 9, Emacs sometimes crashes with SIGBUS or SIGSEGV after you | |
390 | delete a frame. We think this is due to a bug in the X libraries | |
391 | provided by HP. With the alternative X libraries in | |
392 | /usr/contrib/mitX11R5/lib, the problem does not happen. | |
2e493ffe | 393 | |
a7bfd66f DL |
394 | If you are running HP/UX release 8.0 or later, you need the optional |
395 | "C/ANSI C" software in order to build Emacs (older releases of HP/UX | |
956ace37 JB |
396 | do not require any special software). If the file "/etc/filesets/C" |
397 | exists on your machine, you have this software, otherwise you do not. | |
398 | ||
2e493ffe JB |
399 | Note that HP has used two incompatible assembler syntaxes, |
400 | and has recently changed the format of C function frames. | |
cbd6b57c | 401 | `src/crt0.c' and `src/alloca.s' have been conditionalised for the new |
2e493ffe JB |
402 | assembler and new function-entry sequence. You may need to define |
403 | OLD_HP_ASSEMBLER if you are using an older hpux version. If you | |
404 | have an official (bought from HP) series 300 machine you have | |
405 | the new assembler. Kernels that are 5.+ or later have new | |
406 | assembler. A Series 200 that has been upgraded to a 68010 | |
407 | processor and a 5.+ kernel has the new compiler. | |
408 | ||
409 | Define C_SWITCH_MACHINE to be +X to make a version of Emacs that | |
a7bfd66f | 410 | runs on both 68010 and 68020 based HP/UX's. |
2e493ffe JB |
411 | |
412 | Define HPUX_68010 if you are using the new assembler, for | |
413 | a system that has a 68010 without a 68881. This is to say, | |
414 | a s200 (upgraded) or s310. | |
415 | ||
416 | Define the symbol HPUX_NET if you have the optional network features | |
a7bfd66f | 417 | that include the `netunam' system call. This is referred to as |
2e493ffe JB |
418 | Network Services (NS/9000) in HP literature. |
419 | ||
2e493ffe JB |
420 | HP 9000 series 500: not supported. |
421 | ||
422 | The series 500 has a seriously incompatible memory architecture | |
423 | which relocates data in memory during execution of a program, | |
424 | and support for it would be difficult to implement. | |
425 | ||
a7bfd66f DL |
426 | HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux |
427 | or ...hpux9shr, or ...-nextstep) | |
428 | ||
429 | Use hppa1.1 for the 700 series and hppa1.0 for the 800 | |
430 | series machines. (Emacs may not actually care which one you use.) | |
2e493ffe | 431 | |
a7bfd66f | 432 | Support for NextSTEP was added in 19.31. |
2e493ffe | 433 | |
a7bfd66f DL |
434 | Emacs 20 may work on HPUX 10. You need patch PHSS_6202 to install |
435 | the Xaw and Xmu libraries. On HPUX 10.20 you may need to compile with GCC; | |
436 | when Emacs was compiled with HP's C compiler, HP92453-01 A.10.32.03, | |
437 | the subprocess features failed to work. | |
438 | ||
439 | 19.26 is believed to work on HPUX 9 provided you compile with GCC. | |
440 | As of version 19.16, Emacs was reported to build (using GCC) and run | |
441 | on HP 9000/700 series machines running HP/UX versions 8.07 and 9.01. | |
442 | The HP compiler is known to fail on some versions if you use +O3, | |
443 | but it may work with lower optimization levels. | |
444 | ||
445 | Use hppa1.1-hp-hpux9shr to use shared libraries on HPUX version 9. | |
446 | You may need to create the X libraries libXaw.a and libXmu.a from | |
447 | the MIT X distribute, and you may need to edit src/Makefile's | |
448 | definition of LIBXT to look like this: | |
449 | ||
450 | LIBXT= $(LIBW) -lXmu -lXt $(LIBXTR6) -lXext | |
451 | ||
452 | Some people report trouble using the GNU memory allocator under | |
453 | HP/UX version 9. The problems often manifest as lots of ^@'s in the | |
454 | buffer. | |
455 | ||
456 | We are told that these problems go away if you obtain the latest | |
457 | patches for the HP/UX C compiler. James J Dempsey | |
458 | <jjd@spserv.bbn.com> says that this set of versions works for him: | |
459 | /bin/cc: | |
460 | HP92453-01 A.09.28 HP C Compiler | |
461 | /lib/ccom: | |
462 | HP92453-01 A.09.28 HP C Compiler | |
463 | HP-UX SLLIC/OPTIMIZER HP-UX.09.00.23 02/18/93 | |
464 | Ucode Code Generator - HP-UX.09.00.23.5 (patch) 2/18/93 | |
465 | ||
466 | For 700 series machines, the HP-UX patch needed is known as | |
467 | PHSS_2653. (Perhaps for 800 series machines as well; we don't | |
468 | know.) If you are on the Internet, you should be able to obtain | |
469 | this patch by using telnet to access the machine | |
470 | support.mayfield.hp.com and logging in as "hpslreg" and following | |
471 | the instructions there. Or you may be able to use this | |
472 | web site: | |
473 | ||
474 | HP Patch Server: http://support.mayfield.hp.com/patches/html/patches.html | |
475 | HP Support Line: http://support.mayfield.hp.com | |
476 | ||
477 | Please do not ask FSF for further support on this. If you have any | |
478 | trouble obtaining the patch, contact HP Software Support. | |
479 | ||
480 | If your buffer fills up with nulls (^@) at some point, it could well | |
481 | be that problem. That problem does not happen when people use GCC | |
482 | to compile Emacs. On the other hand, the HP compiler version 9.34 | |
483 | was reported to work for the 19.26 pretest. 9.65 was also reported to work. | |
484 | ||
485 | If you turn on the DSUSP character (delayed suspend), | |
486 | Emacs 19.26 does not know how to turn it off on HPUX. | |
487 | You need to turn it off manually. | |
488 | ||
489 | If you are running HP/UX release 8.0 or later, you need the optional | |
490 | "C/ANSI C" software in order to build Emacs (older releases of HP/UX | |
956ace37 JB |
491 | do not require any special software). If the file "/etc/filesets/C" |
492 | exists on your machine, you have this software, otherwise you do not. | |
493 | ||
cbd6b57c | 494 | High Level Hardware Orion (orion-highlevel-bsd) |
2e493ffe JB |
495 | |
496 | This is the original microprogrammed hardware. | |
77d78be1 | 497 | Machine description file ought to work. |
2e493ffe | 498 | |
cbd6b57c | 499 | High Level Hardware Orion 1/05 (clipper-highlevel-bsd) |
2e493ffe JB |
500 | |
501 | Changes merged in 18.52. This is the one with the Clipper cpu. | |
502 | Note that systems which lack NFS need LOAD_AVE_TYPE changed to `double'. | |
503 | ||
504 | C compiler has a bug; it loops compiling eval.c. | |
505 | Compile it by hand without optimization. | |
506 | ||
a7bfd66f DL |
507 | HITACHI SR2001/SR2201 series (hppa1.1-hitachi-hiuxmpp) |
508 | ||
509 | These machines are based on PA architecture running HI-UX/MPP | |
510 | (based on OSF1. `MPP' stands for `Massively Parallel Processor'). | |
511 | ||
512 | Emacs 19.34 is believed to work; its pretest was tested | |
513 | both on SR2001 (output of `uname -rv' is `00-01-BB 0') and | |
514 | SR2201 (`02-00 0'). | |
515 | ||
516 | The machine description file is `src/m/sr2k.h' is based on | |
517 | `src/m/hp800.h'. The system description file is `src/s/hiuxmpp.h' | |
518 | based on `src/s/osf1.h'. Note that this system doesn't use COFF. | |
519 | ||
cbd6b57c | 520 | IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2) |
2e493ffe JB |
521 | |
522 | Changes merged in version 19. You may need to copy | |
523 | /usr/lib/samples/hft/hftctl.c to the Emacs src directory. | |
524 | ||
cbd6b57c JB |
525 | i386-ibm-aix1.1 may not work with certain new X window managers, and |
526 | may be suboptimal. | |
77d78be1 | 527 | |
a7bfd66f DL |
528 | IBM RS/6000 (rs6000-ibm-aix*) |
529 | ||
530 | Emacs 19.26 is believed to work; its pretest was tested. | |
2e493ffe | 531 | |
a7bfd66f DL |
532 | At last report, Emacs didn't run well on terminals. Informed |
533 | persons say that the tty VMIN and VTIME settings have been | |
534 | corrupted; if you have a fix, please send it to us. | |
2e493ffe | 535 | |
ca21f8b1 | 536 | Compiling with -O using the IBM compiler has been known |
a7bfd66f DL |
537 | to make Emacs work incorrectly. It's reported that on |
538 | AIX 3.2.5 with an IBM compiler earlier than 1.03.00.14, | |
539 | cc -O fails for some files. You need to install any | |
540 | PTF containing APAR #IX42810 to bring the compiler to | |
541 | the 1.03.00.14 level to allow optimized compiles. | |
542 | ||
543 | There are reports that IBM compiler versions earlier than 1.03.00.02 | |
544 | fail even without -O. However, another report said that compiler | |
545 | version 1.02.01.00 did work, on AIX 3.2.4, with Emacs 19.31. | |
546 | ||
547 | As of 19.11, if you strip the Emacs executable, it ceases to work. | |
548 | ||
549 | If you are using AIX 3.2.3, you may get a core dump when loading | |
550 | ange-ftp. You may be able to fix the problem by defining LIBS_TERMCAP | |
551 | as -ltermcap -lcurses. Please tell us if this fails to work. | |
552 | ||
553 | If anyone can fix the above problems, or confirm that they don't happen | |
554 | with certain versions of various programs, we would appreciate it. | |
2e493ffe | 555 | |
cbd6b57c | 556 | IBM RT/PC (romp-ibm-bsd or romp-ibm-aix) |
2e493ffe | 557 | |
cbd6b57c | 558 | Use romp-ibm-bsd for the 4.2-like system and romp-ibm-aix for AIX. |
a7bfd66f | 559 | 19.22 is reported to work under bsd. We don't know about AIX. |
2e493ffe JB |
560 | |
561 | On BSD, if you have trouble, try compiling with a different compiler. | |
562 | ||
563 | On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into | |
564 | hftctl.o, with this result left in the src directory (hftctl.c is | |
565 | part of the standard AIX distribution). | |
566 | ||
567 | window.c must not be compiled with -O on AIX. | |
568 | ||
cbd6b57c | 569 | Integrated Solutions `Optimum V' (m68k-isi-bsd4.2 or -bsd4.3) |
2e493ffe JB |
570 | |
571 | 18.52 said to work on some sort of ISI machine. | |
572 | Version 18.45 worked (running on a Optimum V (VME bus, 68020) | |
573 | BSD 4.2 (3.05e) system). 18.42 is reported to work on | |
574 | a Qbus 68010 system. Has not been tried on `WorkStation' `Cluster | |
575 | Compute Node' `Cluster WorkStation' or `Server Node' (Love the | |
576 | StudLYCaps) | |
577 | ||
578 | Compilation with -O is rumored to break something. | |
579 | ||
580 | On recent system versions, you may need to undefine the macro UMAX | |
cbd6b57c | 581 | in `lib-src/loadst.c' and `src/getpagesize.h'. They stupidly defined this |
2e493ffe JB |
582 | in a system header file, which confuses Emacs (which thinks that UMAX |
583 | indicates the Umax operating system). | |
584 | ||
a7bfd66f DL |
585 | Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, |
586 | i386-*-xenix, i386-*-freebsd, i386-*-linux-gnu, | |
587 | i386-*-sol2.4, i386-*-sysv3, i386-intsys-sysv, | |
588 | i386-*-sysv4, i386-*-sysv4.2, | |
589 | i386-*-sysv5.3, i386-*-bsd4.2, | |
590 | i386-*-sco3.2v4, i386-*-bsd386, i386-*-386bsd, | |
591 | i386-*-msdos, i386-*-windowsnt. | |
592 | i386... can be replaced with i486... or i586...) | |
593 | ||
594 | In the above configurations, * means that the manufacturer's name | |
595 | you specify does not matter, and you can use any name you like | |
596 | (but it should not contain any dashes or stars). | |
597 | ||
598 | When using the ISC configurations, be sure to specify the isc | |
599 | version number - for example, if you're running ISC 3.0, use | |
600 | i386-unknown-isc3.0 as your configuration name. | |
601 | Use i386-*-esix for Esix; Emacs runs as of version 19.6. | |
602 | Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26. | |
cbd6b57c JB |
603 | Use i386-intsys-sysv for Integrated Solutions 386 machines. |
604 | It may also be correct for Microport systems. | |
a7bfd66f DL |
605 | Use i386-*-sco3.2v4 for SCO 3.2v4; Emacs runs as of version 19.26. |
606 | ||
607 | On GNU/Linux systems, Emacs 19.23 was said to work properly with libc | |
608 | version 4.5.21, but not with 4.5.19. If your system uses QMAGIC | |
609 | for the executable format, you must edit config.h to define LINUX_QMAGIC. | |
610 | ||
611 | On GNU/Linux, configure may fail to put these definitions in config.h: | |
612 | ||
613 | #define HAVE_GETTIMEOFDAY | |
614 | #define HAVE_MKDIR | |
615 | #define HAVE_RMDIR | |
616 | #define HAVE_XSCREENNUMBEROFSCREEN | |
617 | ||
618 | To work around the problem, add those definitions by hand. | |
619 | It is possible that this problem happens only with X11R6 | |
620 | or that newer system versions have fixed it. | |
621 | ||
622 | The 19.26 pretest was reported to work on SVR4.3 and on Freebsd. | |
623 | ||
624 | 19.29 is reported to crash when using Motif on Solaris 2.5. | |
625 | The reasons are not yet known. | |
626 | ||
627 | Use i386-*-bsdiN for BSDI BSD/OS version N; Emacs runs as of version 19.23. | |
628 | In some system versions, `make' is broken; use GNU make instead. | |
629 | Shell bugs in version 1.0 of BSD/OS cause configure | |
630 | to do the wrong thing with --with-x-toolkit; the workaround is to edit | |
631 | configure to run another shell such as bash. | |
632 | ||
633 | For System V release 3, use i386-*-sysv3. | |
634 | For System V release 4, use i386-*-sysv4. | |
635 | For System V release 4.2, use i386-*-sysv4.2. | |
636 | ||
637 | If you are using Xenix, see notes at end under Xenix. | |
638 | If you are using Esix, see notes at end under Esix. | |
639 | If you are using SCO Unix, see notes at end under SCO. | |
640 | ||
641 | On 386bsd, NetBSD and FreeBSD, at one time, it was necessary to use | |
642 | GNU make, not the system's make. Assuming it's installed as gmake, | |
643 | do `gmake install MAKE=gmake'. However, more recently it is | |
644 | reported that using the system Make on NetBSD 1.3.1 works ok. | |
645 | ||
646 | If you are using System V release 4.2, you may find that `cc -E' | |
647 | puts spurious spaces in `src/xmakefile'. If that happens, | |
648 | specify CPP=/lib/cpp as an option when you run make. | |
649 | There is no problem if you compile with GCC. | |
650 | ||
651 | Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries | |
652 | requires the experimental "net 2" network patches (no relation to | |
653 | Berkeley Net 2). There is a report that (some version of) Linux | |
654 | requires including `/usr/src/linux/include/linux' in buffer.c | |
655 | but no coherent explanation of why that might be so. If it is so, | |
656 | in current versions of Linux, something else should probably be changed. | |
2e493ffe JB |
657 | |
658 | Some sysV.3 systems seem to have bugs in `opendir'; | |
659 | for them, alter `config.h' to define NONSYSTEM_DIR_LIBRARY | |
660 | and undefine SYSV_SYSTEM_DIR. | |
661 | ||
662 | If you use optimization on V.3, you may need the option -W2,'-y 0' | |
663 | to prevent certain faulty optimization. | |
664 | ||
0ec1ba5b JB |
665 | On 386/ix, to link with shared libraries, add #define USG_SHARED_LIBRARIES |
666 | to config.h. | |
667 | ||
a7bfd66f DL |
668 | On SCO, there are problems in regexp matching when Emacs is compiled |
669 | with the system compiler. The compiler version is "Microsoft C | |
670 | version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; | |
671 | Quick C Compiler Version 1.00.46 (Beta). The solution is to compile | |
672 | with GCC. | |
673 | ||
674 | On ISC systems (2.02 and more recent), don't try to use the versions | |
675 | of X that come with the system; use XFree86 instead. | |
676 | ||
2e493ffe JB |
677 | There is no consistency in the handling of certain system header files |
678 | on V.3. | |
679 | ||
680 | Some versions have sys/sioctl.h, and require it in sysdep.c. | |
681 | But some versions do not have sys/sioctl.h. | |
0ec1ba5b JB |
682 | For a given version of the system, this may depend on whether you have |
683 | X Windows or TCP/IP. Define or undefine NO_SIOCTL_H in config.h | |
684 | according to whether you have the file. | |
685 | ||
686 | Likewise, some versions have been known to need sys/ttold.h, sys/stream.h, | |
687 | and sys/ptem.h included in sysdep.c. If your system has these files, | |
688 | try defining NEED_PTEM_H in config.h if you have trouble without it. | |
689 | ||
690 | You may find that adding -I/usr/X/include or -I/usr/netinclude or both | |
691 | to CFLAGS avoids compilation errors on certain systems. | |
692 | ||
2e493ffe JB |
693 | Some versions convince sysdep.c to try to use `struct tchars' |
694 | but define `struct tc' instead; add `#define tchars tc' | |
695 | to config.h to solve this problem. | |
696 | ||
cbd6b57c | 697 | Iris 2500 and Iris 2500 Turbo (m68k-sgi-iris3.5 or m68k-sgi-iris3.6) |
2e493ffe | 698 | |
52f8dbf8 | 699 | Version 18 was said to work; use m68k-sgi-iris3.5 for system version 2.5 |
cbd6b57c JB |
700 | and m68k-sgi-iris3.6 for system version 3.6. |
701 | Note that the 3030 is the same as the Iris 2500 Turbo. | |
2e493ffe | 702 | |
a7bfd66f | 703 | Iris 4D (mips-sgi-irix[456].*) |
2e493ffe | 704 | |
a7bfd66f DL |
705 | The 19.26 pretest was reported to work on IRIX 4.0.5 and 5.2. |
706 | 19.23 was reported to work on IRIX 5.2, but you may need to install | |
707 | the "compiler_dev.hdr.internal" subsystem in order to compile unexelfsgi.c. | |
708 | 19.22 was known to work on all Silicon Graphics machines running | |
709 | IRIX 4.0.5 or IRIX 5.1. | |
77d78be1 | 710 | |
a7bfd66f DL |
711 | Compiling with -O using IRIX compilers prior to 3.10.1 may not work. |
712 | Don't use -O or use GCC instead. | |
2e493ffe | 713 | |
a7bfd66f DL |
714 | Most IRIX 3.3 systems do not have an ANSI C compiler, but a few do. |
715 | Compile Emacs 18 with the -cckr switch on these machines. | |
2e493ffe | 716 | |
a7bfd66f DL |
717 | There is a bug in IRIX 3.3 that can sometimes leave ptys owned by root |
718 | with a permission of 622. This causes malfunctions in use of | |
719 | subprocesses of Emacs. Irix versions 4.0 and later with GNU Emacs | |
720 | versions 18.59 and later fix this bug. | |
2e493ffe | 721 | |
cbd6b57c | 722 | Masscomp (m68k-masscomp-rtu) |
2e493ffe JB |
723 | |
724 | 18.36 worked on a 5500DP running RTU v3.1a and compiler version 3.2 | |
725 | with minor fixes that are included in 18.37. However, bizarre behavior | |
726 | was reported for 18.36 on a Masscomp (model and version unknown but probably | |
727 | a 68020 system). The report sounds like a compiler bug. | |
728 | ||
729 | A compiler bug affecting statements like | |
730 | unsigned char k; unsigned char *p;... x = p[k]; | |
731 | has been reported for "C version 1.2 under RTU 3.1". We do not wish | |
732 | to take the time to install the numerous workarounds required to | |
a7bfd66f | 733 | compensate for this bug. |
2e493ffe | 734 | |
cbd6b57c | 735 | For RTU version 3.1, define FIRST_PTY_LETTER to be 'p' in `src/s/rtu.h' |
2e493ffe JB |
736 | (or #undef and redefine it in config.h) so that ptys will be used. |
737 | ||
738 | GNU Emacs is said to have no chance of compiling on RTU versions | |
739 | prior to v3.0. | |
740 | ||
cbd6b57c | 741 | Megatest (m68k-megatest-bsd) |
2e493ffe JB |
742 | |
743 | Emacs 15 worked; do not have any reports about Emacs 16 or 17 | |
744 | but any new bugs are probably not difficult. | |
745 | ||
cbd6b57c | 746 | Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd) |
2e493ffe | 747 | |
a7bfd66f DL |
748 | The C compiler on Riscos 4.51 dumps core trying to optimize |
749 | parts of Emacs. Try without optimization or try GCC. | |
750 | ||
751 | Meanwhile, the linker on that system returns success even if | |
752 | there are undefined symbols; as a result, configure gets the | |
753 | wrong answers to various questions. No work-around is known | |
754 | except to edit src/config.h by hand to indicate which functions | |
755 | don't exist. | |
2e493ffe | 756 | |
cbd6b57c JB |
757 | Use mips-mips-riscos4.0 for RISCOS version 4. |
758 | Use mips-mips-bsd with the BSD world. | |
2e493ffe | 759 | |
cbd6b57c JB |
760 | Note that the proper configuration names for DECstations are |
761 | mips-dec-ultrix and mips-dec-osf. | |
b7cceaf1 JB |
762 | |
763 | If you are compiling with GCC, then you must run fixincludes; | |
764 | the alternative of using -traditional won't work because | |
765 | the definition of SIGN_EXTEND_CHAR uses the keyword `signed'. | |
766 | ||
767 | If the SYSV world is the default, then you probably need the following | |
768 | line in etc/Makefile: | |
769 | ||
770 | CFLAGS= -g -systype bsd43 | |
771 | ||
772 | Some operating systems on MIPS machines give SIGTRAP for division by | |
773 | zero instead of the usual signals. The only real solution is to fix | |
774 | the system to give a proper signal. | |
775 | ||
776 | In the meantime, you can change init_data in data.c if you wish. | |
777 | Change it to handle SIGTRAP as well as SIGFPE. But this will have a | |
778 | great disadvantage: you will not be able to run Emacs under a | |
779 | debugger. I think crashing on division by zero is a lesser problem. | |
780 | ||
a7bfd66f DL |
781 | dsg@mitre.org reported needing to use --x-libraries=/bsd43/usr/lib |
782 | on a riscos4bsd site. But it is not clear whether this is needed in | |
783 | general or only because of quirks on a particular site. | |
784 | ||
cbd6b57c | 785 | National Semiconductor 32000 (ns32k-ns-genix) |
2e493ffe JB |
786 | |
787 | This is for a complete machine from National Semiconductor, | |
788 | running Genix. Changes merged in version 19. | |
789 | ||
cbd6b57c | 790 | NCR Tower 32 (m68k-ncr-sysv2 or m68k-ncr-sysv3) |
0ec1ba5b | 791 | |
cbd6b57c JB |
792 | If you are running System V release 2, use m68k-ncr-sysv2. |
793 | If you are running System V release 3, use m68k-ncr-sysv3. | |
0ec1ba5b | 794 | |
52f8dbf8 | 795 | These both worked as of 18.56. If you change `src/ymakefile' so that |
cbd6b57c JB |
796 | CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, check |
797 | out the comments in `src/m/tower32.h' (for System V release 2) or | |
798 | `src/m/tower32v3.h' (for System V release 3) about this. | |
0ec1ba5b | 799 | |
cbd6b57c JB |
800 | There is a report that compilation with -O did not work with 18.54 |
801 | under System V release 2. | |
2e493ffe | 802 | |
a7bfd66f DL |
803 | NCR Intel system (i386-ncr-sysv4.2) |
804 | ||
805 | This system works in 19.31, but if you don't link it with GNU ld, | |
806 | you may need to set LD_RUN_PATH at link time to specify where | |
807 | to find the X libraries. | |
808 | ||
809 | NEC EWS4800 (mips-nec-sysv4) | |
810 | ||
811 | This system works in 20.4, but you should use the compiler | |
812 | /usr/abiccs/bin/cc (MIPS ABI MODE). | |
813 | ||
814 | NeXT (m68k-next-nextstep) | |
815 | ||
816 | Emacs 19 has not been tested extensively yet, but it seems to work | |
817 | in a NeXTStep 3.0 terminal window, and under the X server called | |
818 | co-Xist. You may need to specify -traditional when src/Makefile | |
819 | builds xmakefile. | |
820 | ||
821 | NeXT users might want to implement direct operation with NeXTStep, | |
822 | but from the point of view of the GNU project, that is a | |
823 | distraction. | |
824 | ||
825 | Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19. | |
826 | ||
cbd6b57c | 827 | Nixdorf Targon 31 (m68k-nixdorf-sysv) |
2e493ffe | 828 | |
77d78be1 | 829 | Machine description file for version 17 is included in 18 |
2e493ffe | 830 | but whether it works is not known. |
cbd6b57c | 831 | `src/unexec.c' bombs if compiled with -O. |
2e493ffe JB |
832 | Note that the "Targon 35" is really a Pyramid. |
833 | ||
cbd6b57c | 834 | Nu (TI or LMI) (m68k-nu-sysv) |
2e493ffe JB |
835 | |
836 | Version 18 is believed to work. | |
837 | ||
a7bfd66f DL |
838 | Paragon OSF/1 (i860-intel-osf1) |
839 | ||
840 | Changes merged in 19.29. | |
841 | ||
842 | There is a bug in OSF/1 make which claims there is a syntax error | |
843 | in the src/xmakefile. You can successfully build emacs with: | |
844 | ||
845 | pmake MAKE=pmake | |
846 | ||
cbd6b57c | 847 | Plexus (m68k-plexus-sysv) |
2e493ffe | 848 | |
52f8dbf8 | 849 | Worked as of 17.56. |
2e493ffe | 850 | |
cbd6b57c | 851 | Pmax (DEC Mips) (mips-dec-ultrix or mips-dec-osf1) |
2e493ffe JB |
852 | |
853 | See under DECstation, above. | |
854 | ||
cbd6b57c | 855 | Prime EXL (i386-prime-sysv) |
2e493ffe JB |
856 | |
857 | Minor changes merged in 19.1. | |
858 | ||
cbd6b57c | 859 | Pyramid (pyramid-pyramid-bsd) |
2e493ffe | 860 | |
a7bfd66f DL |
861 | The 19.26 pretest was observed to work on OSx 5.0, but it is necessary |
862 | to edit gmalloc.c. You must add #include <sys/types.h> at the top, | |
863 | and delete the #define for size_t. | |
864 | ||
ca21f8b1 JB |
865 | You need to build Emacs in the Berkeley universe with |
866 | the `ucb' command, as in `ucb make' or `ucb build-install'. | |
867 | ||
2e493ffe | 868 | In OSx 4.0, it seems necessary to add the following two lines |
cbd6b57c | 869 | to `src/m/pyramid.h': |
2e493ffe JB |
870 | #define _longjmp longjmp |
871 | #define _setjmp setjmp | |
872 | ||
873 | In Pyramid system 2.5 there has been a compiler bug making | |
874 | Emacs crash just after screen-splitting with Qnil containing 0. | |
875 | A compiler that fixes this is Pyramid customer number 8494, | |
876 | internal number 1923. | |
877 | ||
878 | Some versions of the pyramid compiler get fatal | |
879 | errors when the -gx compiler switch is used; if this | |
cbd6b57c | 880 | happens to you, change `src/m/pyramid.h' to define |
2e493ffe JB |
881 | C_DEBUG_SWITCH with an empty definition. |
882 | ||
883 | Some old system versions may require you to define PYRAMID_OLD | |
884 | in when alloca.s is preprocessed, in order to define _longjmp and _setjmp. | |
885 | ||
cbd6b57c | 886 | Sequent Balance (ns32k-sequent-bsd4.2 or ns32k-sequent-bsd4.3) |
2e493ffe | 887 | |
52f8dbf8 | 888 | Emacs 18.51 worked on system version 3.0. 18.52 is said to work. |
cbd6b57c | 889 | Delete some lines at the end of `src/m/sequent.h' for earlier system |
77d78be1 | 890 | versions. |
2e493ffe | 891 | |
a7bfd66f DL |
892 | Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4) |
893 | ||
894 | 19.33 has changes to support ptx 4 (a modified SVR4). | |
895 | ||
896 | Emacs 19 should work on Dynix (BSD). However, if you compile with | |
897 | the Sequent compiler, you may find Emacs does not restore the | |
898 | terminal settings on exit. If this happens, compile with GCC. | |
899 | ||
900 | Emacs 19.27 contains patches that should support | |
901 | DYNIX/ptx 1.4 and 2.1 with the native cc compiler. | |
902 | ||
903 | GCC can't compile src/process.c due to a non-standard Sequent asm | |
904 | keyword extension supported by cc and used for the network byte/word | |
905 | swapping functions in the PTX /usr/include/netinet/in.h file. GCC | |
906 | 2.5.8 includes the file <sys/byteorder.h> which can be included into | |
907 | netinet/in.h to perform these byte/word swapping functions in the | |
908 | same manner. Patches have been submitted to the FSF against GCC | |
909 | 2.6.0 to fix this problem and allow Emacs to be built with GCC. | |
2e493ffe | 910 | |
a7bfd66f DL |
911 | If your machine does not have TCP/IP installed, you will have to edit the |
912 | src/s/ptx.h file and comment out #define TCPIP_INSTALLED. | |
913 | ||
914 | Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4) | |
915 | ||
916 | Changes merged in 19.29. This configuration should also work for | |
917 | Pyramid MIS Server running DC-OSX 1.x. The version configured with | |
918 | `--with-x' works without any modifications, but `--with-x-toolkit' | |
919 | works only if the Athena library and the Toolkit library are linked | |
920 | statically. For this, edit `src/Makefile' after the `configure' run | |
921 | and modify the lines with `-lXaw' and `-lXt' as follows: | |
922 | ||
923 | LIBW= /usr/lib/libXaw.a | |
924 | LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext | |
925 | ||
926 | In addition, `--with-x-toolkit=motif' works only | |
927 | if the Motif library and the Toolkit library are linked statically. | |
928 | To do this, edit `src/Makefile' after the `configure' run | |
929 | and modify the lines with `-lXm' and `-lXt' as follows: | |
930 | ||
931 | LIBW= /usr/lib/libXm.a /usr/ccs/lib/libgen.a | |
932 | LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext | |
2e493ffe | 933 | |
cbd6b57c | 934 | SONY News (m68k-sony-bsd4.2 or m68k-sony-bsd4.3) |
2e493ffe | 935 | |
52f8dbf8 | 936 | 18.52 worked. Use m68k-sony-bsd4.3 for system release 3. |
2e493ffe | 937 | |
cbd6b57c | 938 | SONY News 3000 series (RISC NEWS) (mips-sony-bsd) |
2e493ffe | 939 | |
a7bfd66f | 940 | The 19.26 pretest is reported to work. |
2e493ffe | 941 | |
66331187 JB |
942 | Some versions of the operating system give SIGTRAP for division by zero |
943 | instead of the usual signals. This causes division by zero | |
944 | to make Emacs crash. The system should be fixed to give the proper signal. | |
945 | Changing Emacs is not a proper solution, because it would prevent | |
946 | Emacs from working under any debugger. But you can change init_data | |
947 | in data.c if you wish. | |
948 | ||
a7bfd66f DL |
949 | Stardent i860 (i860-stardent-sysv4.0) |
950 | ||
951 | 19.26 pretest reported to work. | |
952 | ||
2e493ffe JB |
953 | Stardent 1500 or 3000 |
954 | ||
955 | See Titan. | |
956 | ||
cbd6b57c | 957 | Stride (m68k-stride-sysv) |
2e493ffe JB |
958 | |
959 | Works (most recent news for 18.30) on their release 2.0. | |
cbd6b57c | 960 | For release 2.2, see the end of `src/m/stride.h'. |
2e493ffe JB |
961 | It may be possible to run on their V.1 system but changes |
962 | in the s- file would be needed. | |
963 | ||
a7bfd66f DL |
964 | Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, |
965 | sparc-sun-sunos4.1.3noshr, sparc-sun-solaris2.*, | |
966 | i386-sun-solaris2.*) | |
967 | ||
968 | Emacs 20.3 fails to build on Solaris 2.5 if you use GCC 2.7.2.3. | |
969 | Installing GCC 2.8 fixes the problem. | |
970 | ||
971 | 19.32 works on Solaris 2.4 and 2.5. On Solaris 2.5 | |
972 | you may need one of these patches to prevent Emacs from crashing | |
973 | when it starts up: | |
974 | 103093-03: [README] SunOS 5.5: kernel patch (2140557 bytes) | |
975 | 102832-01: [README] OpenWindows 3.5: Xview Jumbo Patch (4181613 bytes) | |
976 | 103242-04: [README] SunOS 5.5: linker patch (595363 bytes) | |
977 | ||
978 | There are reports that using SunSoft cc with -xO4 -xdepend produces | |
979 | bad code for some part of Emacs. | |
980 | ||
981 | Emacs works ok Sunos 4.1.x | |
982 | provided you completely replace your C shared library | |
983 | using one of the SunOS 4.1.x jumbo replacement patches from Sun. | |
984 | Here are the patch numbers for Sunos 4.1.3: | |
985 | 100890-10 SunOS 4.1.3: domestic libc jumbo patch | |
986 | 100891-10 SunOS 4.1.3: international libc jumbo patch | |
987 | ||
988 | Some people report that Emacs crashes immediately on startup when | |
989 | used with a non-X terminal, but we think this is due to compiling | |
990 | with GCC and failing to use GCC's "fixed" system header files. | |
991 | ||
992 | Some Sun versions of X windows use the clipboard, not the selections, | |
993 | for transferring text between clients. The Cut, Paste and Copy items | |
994 | in the menu bar Edit menu work with the clipboard. | |
2e493ffe | 995 | |
cbd6b57c JB |
996 | It's important to include the SunOS version number in the |
997 | configuration name. For example, for SunOS release 4.0 on a Sun 3, | |
998 | use `m68k-sun-sunos4.0'; for SunOS release 4.1 on a Sparc, use | |
a7bfd66f DL |
999 | `sparc-sun-sunos4.1'. For SunOS release 4.1.3 on a Sparc, use |
1000 | `sparc-sun-sunos4.1.3'. Note that shared libraries are now | |
1001 | used by default on SunOS 4.1. | |
1002 | ||
1003 | A user reported irreproducible segmentation faults when using 19.29 | |
1004 | on Solaris 2.3 and 2.4 after compiling it with the Sun compiler. | |
1005 | The problem went away when GCC 2.7.0 was used instead. We do not know | |
1006 | whether anything in Emacs is partly to blame for this. | |
1007 | ||
1008 | X11R6 is set up to make shared libraries only, on Sunos 4. | |
1009 | Therefore, in order to link Emacs, you need to create static X libraries. | |
1010 | To do this, rebuild X11 after setting | |
1011 | #define ForceNormalLib YES | |
1012 | #define SeparateSharedCompile YES | |
1013 | in site.def (after #ifdef AfterVendorCF). | |
cbd6b57c JB |
1014 | |
1015 | Use `m68k' for the 68000-based Sun boxes, `sparc' for Sparcstations, | |
a7bfd66f DL |
1016 | and `i386' for Sun Roadrunners. i386 calls for Sunos4.0. |
1017 | ||
1018 | If you compile with Sun's ANSI compiler acc, you need additional options | |
1019 | when linking temacs, such as | |
1020 | /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1 | |
1021 | (those should be added just before the libraries) and you need to | |
1022 | add -lansi just before -lc. The precise file names depend on the | |
1023 | compiler version, so we cannot easily arrange to supply them. | |
1024 | ||
1025 | On SunOS 4.1.1, do not use /usr/5bin/cc. You can use gcc or/usr/bin/cc. | |
1026 | Make sure the environment variable LD_LIBRARY_PATH is not defined. | |
1027 | ||
1028 | Some people report crashes on SunOS 4.1.3 if SYSTEM_MALLOC is defined. | |
1029 | Others have reported that Emacs works if SYSTEM_MALLOC is defined, and not | |
1030 | if it is undefined. So far we do not know why results vary in this way. | |
1031 | The sources are set up so that SYSTEM_MALLOC is defined; if that crashes, | |
1032 | or if you want the benefit of the relocating memory allocator, you can | |
1033 | try enabling the #undef SYSTEM_MALLOC in src/s/sunos4-1-3.h. | |
1034 | ||
1035 | On Solaris 2, you need to install patch 100947-02 to fix a system bug. | |
1036 | Presumably this patch comes from Sun. You must alter the definition of | |
1037 | LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib. | |
1038 | You must make sure that /usr/ucblib is not in your LD_LIBRARY_PATH. | |
1039 | ||
1040 | On Solaris 2.2, with a multiprocessor SparcCenter 1000, Emacs 19.17 is | |
1041 | reported to hang sometimes if it exits while it has one or more | |
1042 | subprocesses (e.g. the `wakeup' subprocess used by `display-time'). | |
1043 | Emacs and its subprocesses become zombies, and in their zombie state | |
1044 | slow down their host and disable rlogin and telnet. This is most | |
1045 | likely due to a bug in Solaris 2.2's multiprocessor support, | |
1046 | rather than an Emacs bug. | |
1047 | ||
1048 | On Solaris, do not use /usr/ucb/cc. Use /opt/SUNWspro/bin/cc. Make | |
1049 | sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before | |
1050 | /usr/ucb. (Most free software packages have the same requirement on | |
1051 | Solaris.) | |
1052 | ||
1053 | If you have trouble using open-network-stream, get the distribution | |
1054 | of `bind' (the BSD name-server), build libresolv.a, and link Emacs | |
1055 | with -lresolv, by copying the #definition of LIBS_SYSTEM in | |
1056 | src/s/sunos4-1.h to src/config.h. This problem is due to obsolete | |
2e493ffe JB |
1057 | software in the nonshared standard library. |
1058 | ||
1059 | If you want to use SunWindows, define HAVE_SUN_WINDOWS | |
1060 | in config.h to enable a special interface called `emacstool'. | |
77d78be1 | 1061 | The definition must *precede* the #include "machine.h". |
2e493ffe JB |
1062 | System version 3.2 is required for this facility to work. |
1063 | ||
1064 | We recommend that you instead use the X window system, which | |
1065 | has technical advantages, is an industry standard, and is also | |
a7bfd66f DL |
1066 | free software. The FSF does not support the SunWindows code; |
1067 | we installed it only on the understanding we would not let it | |
1068 | divert our efforts from what we think is important. | |
2e493ffe JB |
1069 | |
1070 | If you are compiling for X windows, and the X window library was | |
1071 | compiled to use the 68881, then you must edit config.h according | |
cbd6b57c | 1072 | the comments at the end of `src/m/sun3.h'. |
2e493ffe JB |
1073 | |
1074 | Note that Emacs on a Sun is not really as big as it looks. | |
1075 | As dumped, it includes around 200k of zeros between the | |
1076 | original text section and the original data section | |
1077 | (now remapped as part of the text). These are never | |
1078 | swapped in. | |
1079 | ||
1080 | To build a single Emacs that will run on Sun 2 and Sun 3 | |
1081 | HARDWARE, just build it on the Sun 2. | |
1082 | ||
a7bfd66f DL |
1083 | On Sunos 4.1.3, the word is that Emacs can loop infinitely |
1084 | on startup with X due perhaps to a bug in Sunos. Installing all of | |
1085 | these Sun patches fixes the problem. We don't know which of them | |
1086 | are really relevant. | |
52f8dbf8 | 1087 | |
a7bfd66f DL |
1088 | 100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03 |
1089 | 101080-01 100103-12 100249-09 100496-02 100564-07 100630-02 100891-10 | |
1090 | 101134-01 100170-09 100296-04 100377-09 100507-04 100567-04 100650-02 | |
1091 | 101070-01 101145-01 100173-10 100305-15 100383-06 100513-04 100570-05 | |
1092 | 100689-01 101071-03 101200-02 100178-09 100338-05 100421-03 100536-02 | |
1093 | 100584-05 100784-01 101072-01 101207-01 | |
52f8dbf8 | 1094 | |
cbd6b57c | 1095 | Tadpole 68K (m68k-tadpole-sysv) |
77d78be1 JB |
1096 | |
1097 | Changes merged in 19.1. | |
1098 | ||
1099 | You may need to edit Makefile to change the variables LIBDIR and | |
1100 | BINDIR from /usr/local to /usr/contrib. | |
1101 | ||
1102 | To give movemail access to /usr/mail, you may need to execute | |
1103 | ||
1104 | chmod 2755 etc/movemail; chgrp mail etc/movemail | |
1105 | ||
cbd6b57c | 1106 | Tahoe (tahoe-tahoe-bsd4.2 or tahoe-tahoe-bsd4.3) |
2e493ffe | 1107 | |
52f8dbf8 | 1108 | 18.52 was known to work on some Tahoes, but a compiler bug intervenes |
2e493ffe JB |
1109 | on others. Some Emacs versions have worked in Unisys 1r4 |
1110 | (not in 1r3) and CCI I.21. | |
1111 | ||
cbd6b57c JB |
1112 | If you have trouble compiling `lib-src/loadst.c', turn off the definition |
1113 | of DKSTAT_HEADER_FILE in `src/m/tahoe.h'. | |
2e493ffe | 1114 | |
cbd6b57c | 1115 | Tandem Integrity S2 (mips-tandem-sysv) |
0ec1ba5b JB |
1116 | |
1117 | Changes merged in 18.56 but subprocess support is turned off. | |
1118 | You will probably want to see if you can make subprocesses work. | |
1119 | ||
cbd6b57c | 1120 | You must edit `lib-src/Makefile' to define LOADLIBES = -mld. |
0ec1ba5b | 1121 | |
a7bfd66f DL |
1122 | Tektronix XD88 (m88k-tektronix-sysv3*) |
1123 | ||
1124 | The 19.26 pretest was reported to work. | |
1125 | Minor changes merged in 19.19. | |
1126 | ||
cbd6b57c | 1127 | Tektronix 16000 box (6130?) (ns16k-tektronix-bsd) |
2e493ffe JB |
1128 | |
1129 | Emacs 17.61 worked. | |
1130 | ||
cbd6b57c | 1131 | Tektronix 4300 (m68k-tektronix-bsd) |
2e493ffe | 1132 | |
a7bfd66f | 1133 | Emacs 19.26 pretest reported to work. |
2e493ffe | 1134 | |
cbd6b57c | 1135 | Titan P2 or P3 (titan-titan-sysv) |
2e493ffe JB |
1136 | |
1137 | Changes probably merged in version 19. | |
1138 | ||
cbd6b57c | 1139 | Ustation E30 (SS5E) (m68k-unisys-unipl) |
2e493ffe JB |
1140 | |
1141 | Changes merged in 18.52; don't know whether they work. | |
1142 | ||
cbd6b57c JB |
1143 | Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3), |
1144 | Ultrix (vax-dec-ultrix), | |
1145 | System V (vax-dec-sysv0, vax-dec-sysv2), or | |
1146 | VMS (vax-dec-vms) | |
2e493ffe JB |
1147 | |
1148 | Works. | |
1149 | ||
cbd6b57c | 1150 | See under Ultrix for problems using X windows on Ultrix (vax-dec-ultrix). |
2e493ffe | 1151 | |
52f8dbf8 | 1152 | 18.27 worked on System V rel 2 (vax-dec-sysv2). |
2e493ffe | 1153 | |
52f8dbf8 | 1154 | 18.36 worked on System V rel 0 (vax-dec-sysv0). |
2e493ffe | 1155 | |
a7bfd66f DL |
1156 | Richard Levitte <levitte@e.kth.se> distributes a set of patches to |
1157 | Emacs 18.59 to make it work nicely under VMS. Emacs 19 probably | |
1158 | won't work very well, or even compile. Levitte is working on a | |
1159 | port, so these problems should be fixed in the near future. | |
2e493ffe | 1160 | |
cbd6b57c | 1161 | Whitechapel MG1 (ns16k-whitechapel-?) |
2e493ffe | 1162 | |
cbd6b57c JB |
1163 | May work. Supposedly no changes were needed except in `src/m/mg1.h' |
1164 | file. I do not know what Unix version runs on them. | |
2e493ffe | 1165 | |
cbd6b57c | 1166 | Wicat (m68k-wicat-sysv) |
2e493ffe | 1167 | |
cbd6b57c JB |
1168 | Changes merged as of 18.6; whether they work is unknown. |
1169 | See comments in `src/m/wicat.h' for things you should change | |
1170 | depending on the system and compiler version you have. | |
1171 | \f | |
a7bfd66f | 1172 | Here are notes about some of the systems supported: |
2e493ffe | 1173 | |
cbd6b57c | 1174 | Berkeley 4.1 (bsd4.1) |
2e493ffe | 1175 | |
cbd6b57c | 1176 | Works on vaxes. |
2e493ffe | 1177 | |
cbd6b57c | 1178 | Berkeley 4.2 (bsd4.2) |
2e493ffe | 1179 | |
cbd6b57c JB |
1180 | Works on several machines. |
1181 | ||
1182 | Berkeley 4.3 (bsd4.3) | |
1183 | ||
1184 | Works, on Vaxes at least. | |
1185 | ||
a7bfd66f DL |
1186 | Esix |
1187 | ||
1188 | The following was written for Emacs 18.59 and has been | |
1189 | slightly adapted for Emacs 19. It may need more change to be correct. | |
1190 | ||
1191 | Use s/usg5-4.h for Esix System V 4.0.[34] systems if you also have | |
1192 | XFree86. If you insist on using the Esix X Window libraries, good | |
1193 | luck. s/esix5r4.h provides a starting point, but doesn't seem to | |
1194 | work consistently. The basic problems involve the need to load | |
1195 | -lX11 *last* in the link command, and even then some things break. | |
1196 | You get best results by installing XFree86 and forgetting about the | |
1197 | Esix stuff unless you want to run IXI xdt3, which really only needs | |
1198 | the Esix X11 shared libraries. | |
1199 | ||
1200 | To compile with XFree86, make sure that your LD_LIBRARY_PATH | |
1201 | contains /usr/X386/lib. Be careful if you also have the Esix X | |
1202 | Window libraries that /usr/X386/lib appears *first* in the | |
1203 | LD_LIBRARY_PATH. Then define C_SWITCH_X_SYSTEM -I/usr/X386/include. | |
1204 | ||
1205 | Linux (actually GNU/Linux) | |
1206 | ||
1207 | Most of the complete systems which use the Linux kernel are close | |
1208 | enough to the GNU system to be considered variant GNU systems. We | |
1209 | call them "Linux-based GNU systems," or GNU/Linux for short. | |
1210 | ||
1211 | It is not coincidence that many of the other components used with | |
1212 | Linux--including GNU Emacs--were developed specifically for the GNU | |
1213 | project. The GNU project was launched in 1984 to develop a free | |
1214 | complete Unix-like operating system. To reach this goal, we had to | |
1215 | develop whatever system components were not available as freely | |
1216 | redistributable software from some other source. | |
1217 | ||
1218 | The GNU project wants users of GNU/Linux systems to be aware of how | |
1219 | these systems relate to the GNU project, because that will help | |
1220 | spread the GNU idea that software should be free--and thus encourage | |
1221 | people to write more free software. See the file LINUX-GNU in this | |
1222 | directory for more explanation. | |
1223 | ||
cbd6b57c JB |
1224 | Microport |
1225 | ||
1226 | See under "Intel 386". | |
1227 | ||
a7bfd66f DL |
1228 | MSDOS |
1229 | ||
1230 | For installation on MSDOS, see the file INSTALL (search for `MSDOG', | |
1231 | near the end of the file). See the "MS-DOS" chapter of the manual | |
1232 | for information about using Emacs on MSDOS. | |
1233 | ||
1234 | SCO Unix | |
1235 | If you have TCP but not X, you need to edit src/s/sco4.h | |
1236 | to define HAVE_SOCKETS. | |
1237 | ||
1238 | If you are using MMDF instead of sendmail, you need to remove | |
1239 | /usr/lib/sendmail or modify lisp/paths.el before compiling. | |
1240 | lisp/paths.el (which is loaded during the build) will attempt to use | |
1241 | sendmail if it exists. | |
1242 | ||
1243 | If you are using SMAIL, you need to define the macro | |
1244 | SMAIL in config.h. | |
1245 | ||
cbd6b57c JB |
1246 | System V rel 0 (usg5.0) |
1247 | ||
1248 | Works, on Vaxes and 3bxxx's. | |
1249 | There are some problems in 18.37 due to shortnames/cccp problems: | |
1250 | use the emacs 17 cpp if you have it. | |
1251 | ||
1252 | System V rel 2 (usg5.2) | |
1253 | ||
1254 | Works on various machines. | |
1255 | On some (maybe all) machines the library -lPW exists and contains | |
1256 | a version of `alloca'. On these machines, to use it, put | |
1257 | #define HAVE_ALLOCA | |
1258 | #define LIB_STANDARD -lPW -lc | |
1259 | in the `src/m/MACHINENAME.h' file for the machine. | |
1260 | ||
1261 | If you find that the character Meta-DEL makes Emacs crash, | |
1262 | find where function init_sys_modes in sysdep.c sets sg.c_cc[VQUIT] | |
1263 | and make it store 7 there. I have as yet no evidence of whether | |
a7bfd66f | 1264 | this problem, known in HP/UX, exists in other system V versions. |
cbd6b57c JB |
1265 | |
1266 | System V rel 2.2 (usg5.2.2) | |
1267 | ||
1268 | In 5.2.2 AT&T undid, incompatibly, their previous incompatible | |
1269 | change to the way the nlist library is called. A different s- file | |
1270 | is used to enable the other interface. | |
1271 | ||
1272 | They call themselves the right choice--can't they choose? | |
1273 | ||
1274 | Emacs version 18 unexec is currently not working properly | |
1275 | on 5.2.2. Nobody knows why yet. A workaround is to define | |
1276 | NO_REMAP. It is not yet known whether this applies to all | |
1277 | machines running 5.2.2. | |
1278 | ||
1279 | System V rel 3 (usg5.3) | |
1280 | ||
1281 | Some versions of this system support ptys and BSD-style sockets. | |
1282 | On such systems, you should define HAVE_PTYS and HAVE_SOCKETS in config.h. | |
1283 | ||
1284 | If you want to link Emacs with shared libraries, define | |
1285 | USG_SHARED_LIBRARIES. | |
1286 | ||
da33ff57 JB |
1287 | You may have to add ANSI idempotence #-lines to your sys/types.h |
1288 | file to get Emacs to compile correctly. This may be necessary on | |
1289 | other pre-ANSI systems as well. | |
cbd6b57c | 1290 | |
da33ff57 JB |
1291 | On an AT&T 6386WGS using System V Release 3.2 and X11R3, the X support |
1292 | cannot be made to work. Whether or not the GNU relocating malloc is | |
1293 | used, the symptom is that the first call Emacs makes to sbrk(0) returns | |
1294 | (char *)-1. Sorry, you're stuck with character-only mode. Try | |
1295 | installing Xfree86 to fix this. | |
1296 | ||
1297 | System V rel 4.0.3 and 4.0.4 (usg5.4) | |
1298 | ||
1299 | Supported, including shared libraries for ELF, but ptys do not work | |
1300 | because TIOCGPGRP fails to work on ptys (but Dell 2.2 seems to have | |
1301 | fixed this). This failure is probably due to a misunderstanding of | |
1302 | the consequences of the POSIX spec: many system designers mistakenly | |
cbd6b57c JB |
1303 | think that POSIX requires this feature to fail. This is untrue; |
1304 | ptys are an extension, and POSIX says that extensions *when used* | |
1305 | may change the action of standard facilities in any fashion. | |
1306 | ||
a7bfd66f DL |
1307 | If you get compilation errors about wrong number of |
1308 | arguments to getpgrp, define GETPGRP_NO_ARG. | |
1309 | ||
da33ff57 JB |
1310 | The standard C preprocessor may generate xmakefile incorrectly. However, |
1311 | /lib/cpp will work, so use `make CPP=/lib/cpp'. Standard cpp | |
1312 | seems to work OK under Dell 2.2. | |
cbd6b57c | 1313 | |
da33ff57 | 1314 | Some versions 3 and earlier of V.4, on the Intel 386 and 860, had |
cbd6b57c JB |
1315 | problems in the X11 libraries. These prevent Emacs from working |
1316 | with X. You can use Emacs with X provided your copy of X is based | |
da33ff57 JB |
1317 | on X11 release 4 or newer, or is Dell's 2.2 (which is a 4.0.3). |
1318 | Unfortunately, the only way you can tell whether your X11 library is | |
1319 | new enough is to try compiling Emacs to use X. If emacs runs, your | |
1320 | X11 library is new enough. | |
cbd6b57c JB |
1321 | |
1322 | In this context, GSV4 and GSV4i are alternate names for X11R4. | |
1323 | OL2.* is X11R3 based. OL3 is in between X11R3 and X11R4, and may or | |
1324 | may not work, depending on who made the Unix system. If the library | |
1325 | libXol is part of the X distribution, then you have X11R3 and Emacs | |
1326 | won't work with X. | |
1327 | ||
1328 | Most versions of V.4 support sockets. If `/usr/lib/libsocket.so' | |
1329 | exists, your system supports them. If yours does not, you must add | |
1330 | #undef HAVE_SOCKETS in config.h, after the inclusion of s-usg5-4.h. | |
1331 | (Any system that supports Internet should implement sockets.) | |
1332 | ||
1333 | Ultrix (bsd4.3) | |
1334 | ||
1335 | Recent versions of Ultrix appear to support the features of Berkeley 4.3. | |
1336 | Ultrix was at the BSD 4.2 level for a long time after BSD 4.3 came out. | |
1337 | ||
1338 | Ultrix 3.0 has incompatibilities in its X library if you have the | |
1339 | Ultrix version of X (UWS version 2.0). To solve them, you need to | |
1340 | prevent XvmsAlloc.o in Xlib from being used. Israel Pinkas says: | |
1341 | ||
1342 | I added the following lines to config.h after the X defines: | |
1343 | ||
1344 | #if defined(ultrix) && defined(X11) | |
1345 | #define OBJECTS_SYSTEM calloc.o | |
1346 | #endif | |
1347 | ||
1348 | Then I ran the following: | |
1349 | ||
1350 | ar x /usr/lib/libc.a calloc.o | |
1351 | ||
1352 | The problem is said to be gone in UWS version 2.1. | |
1353 | ||
1354 | Uniplus 5.2 (unipl5.2) | |
1355 | ||
1356 | Works, on Dual machines at least. | |
1357 | ||
1358 | VMS (vmsM.N) | |
1359 | ||
a7bfd66f DL |
1360 | Richard Levitte <levitte@e.kth.se> distributes a set of patches to |
1361 | Emacs 18.59 to make it work nicely under VMS. Emacs 19 probably | |
1362 | won't work very well, or even compile. Levitte is working on a | |
1363 | port, so these problems should be fixed in the near future. | |
cbd6b57c JB |
1364 | |
1365 | Note that Emacs for VMS is usually distributed in a special VMS | |
1366 | distribution. See the file ../vms/VMSINSTALL for info on moving | |
1367 | Unix distributions to VMS, and other VMS-related topics. | |
1368 | ||
a7bfd66f DL |
1369 | Windows NT |
1370 | ||
1371 | For installation on Windows NT, see the file etc/INSTALL and search for | |
1372 | `Windows NT'. | |
1373 | ||
cbd6b57c JB |
1374 | Xenix (xenix) |
1375 | ||
1376 | Should work in 18.50, but you will need to edit the files | |
1377 | `lib-src/Makefile' and `src/ymakefile' | |
1378 | (see the comments that mention "Xenix" for what to change.) | |
1379 | Compiling Emacs with -O is said not to work. | |
1380 | ||
1381 | If you want Emacs to work with Smail (installed as /usr/bin/smail) | |
1382 | then add the line #define SMAIL to config.h. | |
1383 | ||
1384 | The file etc/XENIX suggests some useful things to do to Xenix | |
1385 | to make the Emacs meta key work. | |
2e493ffe JB |
1386 | \f |
1387 | Local variables: | |
a7bfd66f | 1388 | mode: indented-text |
2e493ffe JB |
1389 | fill-prefix: " " |
1390 | End: |