3 Copyright (C) 1989, 1990, 1992, 1993, 1998, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
5 See the end of the file for license conditions.
7 This is a list of the status of GNU Emacs on various machines and systems.
9 Information about older releases, and platforms that are no longer
10 supported, has been removed. Consult older versions of this file if
11 you are interested in this information.
13 The `configure' script uses the configuration name to decide which
14 machine and operating system description files `src/config.h' should
15 include. The machine description files are all in `src/m', and have
16 names similar to, but not identical to, the machine names used in
17 configuration names. The operating system files are all in `src/s',
18 and are named similarly. See the `configure' script if you need to
19 know which configuration names use which machine and operating system
22 If you add support for a new configuration, add a section to this
23 file, and then edit the `configure' script to tell it which
24 configuration name(s) should select your new machine description and
25 system description files.
27 Some obsolete platforms are unsupported beginning with Emacs 23.1, see
28 the list at the end of this file.
31 ** Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu)
33 DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f)
34 is reported to produce bogus binaries of Emacs 21.2 when the
35 command-line switches "-O4 -arch ev6 -tune ev6" are used. Using
36 just -O4 produces a good executable.
38 For 4.0 revision 564, and 4.0A and 4.0B, Emacs 20 seems to work
39 with no special configuration options. However, if you use GCC as
40 your compiler, you will need version 2.8.1 or later, as older
41 versions fail to build with a message "Invalid dimension for the
44 ** Apple Macintosh running Mac OS X
46 ** Apple PowerPC Macintosh running GNU/Linux
48 ** HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux)
50 Emacs 20 may work on HPUX 10. You need patch PHSS_6202 to install
51 the Xaw and Xmu libraries. On HPUX 10.20 you may need to compile with GCC;
52 when Emacs was compiled with HP's C compiler, HP92453-01 A.10.32.03,
53 the subprocess features failed to work.
55 If you turn on the DSUSP character (delayed suspend), Emacs 19.26
56 does not know how to turn it off on HPUX. You need to turn it off manually.
58 If you are running HP/UX release 8.0 or later, you need the optional
59 "C/ANSI C" software in order to build Emacs (older releases of HP/UX
60 do not require any special software). If the file "/etc/filesets/C"
61 exists on your machine, you have this software, otherwise you do not.
63 ** IBM RS/6000 (rs6000-ibm-aix*)
65 Emacs 19.26 is believed to work; its pretest was tested.
67 Compiling with the system's `cc' and CFLAGS containing `-O5' might
68 fail because libXbsd isn't found. This is a compiler bug;
69 re-configure Emacs so that it isn't compiled with `-O5'.
71 On AIX 4.3.x and 4.4, compiling with /bin/c89 fails because it
72 treats certain warnings as errors. Use `cc' instead.
74 At last report, Emacs didn't run well on terminals. Informed
75 persons say that the tty VMIN and VTIME settings have been
76 corrupted; if you have a fix, please send it to us.
78 Compiling with -O using the IBM compiler has been known to make
79 Emacs work incorrectly. There are reports that IBM compiler versions
80 earlier than 1.03.00.02 fail even without -O.
82 As of 19.11, if you strip the Emacs executable, it ceases to work.
84 If anyone can fix the above problems, or confirm that they don't happen
85 with certain versions of various programs, we would appreciate it.
87 ** IBM System/390 running GNU/Linux (s390-*-linux-gnu)
89 As of Emacs 21.2, a 31-bit only version is supported on this system.
91 ** Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
92 i386-*-cygwin, i386-*-msdos, i386-*-windowsnt.
93 i386 can be replaced with i486, i586, or i686)
95 In the above configurations, * means that the manufacturer's name
96 you specify does not matter, and you can use any name you like
97 (but it should not contain any dashes or stars).
99 Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26.
100 Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11
101 and non-X11 modes. (The Cygwin site has source and binaries for 21.2.)
103 On GNU/Linux systems, Emacs 19.23 was said to work properly with libc
104 version 4.5.21, but not with 4.5.19.
106 On GNU/Linux, configure may fail to put these definitions in config.h:
108 #define HAVE_GETTIMEOFDAY
111 #define HAVE_XSCREENNUMBEROFSCREEN
113 To work around the problem, add those definitions by hand.
114 It is possible that this problem happens only with X11R6.
115 Newer system versions have fixed it.
117 On NetBSD and FreeBSD, at one time, it was necessary to use
118 GNU make, not the system's make. Assuming it's installed as gmake,
119 do `gmake install MAKE=gmake'. However, more recently it is
120 reported that using the system Make on NetBSD 1.3.1 works ok.
122 Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries
123 requires the experimental "net 2" network patches (no relation to
124 Berkeley Net 2). There is a report that (some version of) Linux
125 requires including `/usr/src/linux/include/linux' in buffer.c
126 but no coherent explanation of why that might be so. If it is so,
127 in current versions of Linux, something else should probably be changed.
129 You may find that adding -I/usr/X/include or -I/usr/netinclude or both
130 to CFLAGS avoids compilation errors on certain systems.
132 Some versions convince sysdep.c to try to use `struct tchars'
133 but define `struct tc' instead; add `#define tchars tc'
134 to config.h to solve this problem.
136 ** Iris 4D (mips-sgi-irix6.*)
138 Emacs 21.3 is reported to work on IRIX 6.5.x.
140 You can build a 64-bit executable (with larger maximum buffer size)
141 on Irix 6.5 by specifying the 64-bit ABI using the `-64' compiler
142 flag or otherwise (see cc(1)).
144 If compiling with GCC on Irix 6 yields an error "conflicting types
145 for `initstate'", install GCC 2.95 or a newer version, and this
146 problem should go away. It is possible that this problem results
147 from upgrading the operating system without reinstalling GCC; so you
148 could also try reinstalling the same version of GCC, and telling us
149 whether that fixes the problem.
151 ** Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
152 i386-sun-solaris2.*, sparc*-*-linux-gnu)
154 To build a 32-bit Emacs (i.e. if you are having any sort of problem
155 bootstrapping a 64-bit version), you can use the Sun Studio compiler
156 and configure Emacs with:
157 env CC="cc -xarch=v7" CFLAGS='' ./configure # on SPARC systems
158 env CC="cc -xarch=386" CFLAGS='' ./configure # on x86 systems
159 On Solaris 2.10, it is also possible to use /usr/sfw/bin/gcc to build
160 a 32-bit version of Emacs. Just make sure you point ./configure to
163 env CC='/usr/sfw/bin/gcc -m32' ./configure
165 To build a 64-bit Emacs (with larger maximum buffer size and
166 including large file support) on a Solaris system which supports
167 64-bit executables, use the Sun compiler, configuring something like
168 this (see the cc documentation for information on 64-bit
171 env CC="cc -xarch=v9" CFLAGS='' ./configure # on SPARC systems
172 env CC="cc -xarch=amd64" CFLAGS='' ./configure # on x86 systems
174 As of version 2.95, GCC doesn't support the 64-bit ABI properly, but
177 Some versions of Solaris 8 have a bug in their XIM (X Input Method)
178 implementation which causes Emacs to dump core when one of several
179 frames is closed. To avoid this, either install patch 108773-12
180 (for Sparc) or 108874-12 (for x86), or configure Emacs with the
181 `--with-xim=no' switch (you can use Leim input methods instead).
183 On Solaris 2.7, building Emacs with WorkShop Compilers 5.0 98/12/15
184 C 5.0 failed, apparently with non-default CFLAGS, most probably due to
185 compiler bugs. Using Sun Solaris 2.7 Sun WorkShop 6 update 1 C
186 release was reported to work without problems. It worked OK on
187 another system with Solaris 8 using apparently the same 5.0 compiler
188 and the default CFLAGS.
190 Emacs 21.1 and 21.2 built with Sun's ProWorks PC3.0.1 compiler on
191 Intel/Solaris 8 was reported to abort and dump core during startup.
192 Using GCC or a newer SUN compiler (Sun WokShop 6 update 2 C 5.3
193 2001/05/15) solves the problem.
195 Emacs 20.5 and later work on SPARC GNU/Linux with the 32-bit ABI.
196 As of release 2.95, GCC doesn't work properly with the 64-bit ABI
197 (applicable on UltraSPARC), but that isn't the default mode.
199 There are reports that using SunSoft cc with -xO4 -xdepend produces
200 bad code for some part of Emacs.
202 Some people report that Emacs crashes immediately on startup when
203 used with a non-X terminal, but we think this is due to compiling
204 with GCC and failing to use GCC's "fixed" system header files.
206 Some Sun versions of X windows use the clipboard, not the selections,
207 for transferring text between clients. The Cut, Paste and Copy items
208 in the menu bar Edit menu work with the clipboard.
210 If you compile with Sun's ANSI compiler acc, you need additional options
211 when linking temacs, such as
212 /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
213 (those should be added just before the libraries) and you need to
214 add -lansi just before -lc. The precise file names depend on the
215 compiler version, so we cannot easily arrange to supply them.
217 On Solaris 2, you need to install patch 100947-02 to fix a system bug.
218 Presumably this patch comes from Sun. You must alter the definition of
219 LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib.
220 You must make sure that /usr/ucblib is not in your LD_LIBRARY_PATH.
222 On Solaris, do not use /usr/ucb/cc. Use /opt/SUNWspro/bin/cc. Make
223 sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before
224 /usr/ucb. (Most free software packages have the same requirement on
225 Solaris.) With this compiler, use `/opt/SUNWspro/bin/cc -E' as the
226 preprocessor. If this inserts extra whitespace into its output (see
227 the PROBLEMS file) then add the option `-Xs'.
229 If you have trouble using open-network-stream, get the distribution
230 of `bind' (the BSD name-server), build libresolv.a, and link Emacs
231 with -lresolv, by editing LIBRESOLV in src/Makefile. This problem is
232 due to obsolete software in the nonshared standard library.
234 Note that Emacs on a Sun is not really as big as it looks. As
235 dumped, it includes around 200k of zeros between the original text
236 section and the original data section (now remapped as part of the
237 text). These are never swapped in.
239 ** SuperH (sh[34]*-*-linux-gnu)
241 Emacs 23.0.60 was reported to work on GNU/Linux (October 2008).
242 Tested on a little-endian sh4 system (cpu type SH7751R) running
245 * Here are notes about some of the systems supported:
247 ** Linux (actually GNU/Linux)
249 Most of the complete systems which use the Linux kernel are close
250 enough to the GNU system to be considered variant GNU systems. We
251 call them "Linux-based GNU systems," or GNU/Linux for short.
253 It is not coincidence that many of the other components used with
254 Linux--including GNU Emacs--were developed specifically for the GNU
255 project. The GNU project was launched in 1984 to develop a free
256 complete Unix-like operating system. To reach this goal, we had to
257 develop whatever system components were not available as freely
258 redistributable software from some other source.
260 The GNU project wants users of GNU/Linux systems to be aware of how
261 these systems relate to the GNU project, because that will help
262 spread the GNU idea that software should be free--and thus encourage
263 people to write more free software. See the file LINUX-GNU in this
264 directory for more explanation.
268 For installation instructions see the file nextstep/INSTALL.
272 For installation on MSDOS, see the file msdos/INSTALL.
273 See the "MS-DOS" chapter of the manual for information about using
276 ** MS-Windows NT/95/98/ME/2000
278 For installation on all versions of the MS-Windows platform, see the
283 No special procedures should be needed to build a 64-bit Emacs. To
284 build a 32-bit Emacs, first ensure that the necessary 32-bit system
285 libraries and include files are installed. Then use:
287 env CC="gcc -m32" ./configure --build=i386-linux-gnu \
288 --x-libraries=/usr/X11R6/lib
290 (using the location of the 32-bit X libraries on your system).
295 Support for the following obsolete platforms was removed in Emacs 23.1
296 (the names in parentheses state the files in src/ that were removed):
298 Apollo SR10.x (unexapollo.c)
299 Convex (unexconvex.c and m/convex.c)
300 Xenix (unexenix.c and s/xenix.h)
301 Iris (unexmips.c m/iris4d.h m/irist.h s/iris3-5.h s/iris3-6.h)
303 Siemens machines running Sinix (unexsni.c)
304 Harris CXUX (s/cxux*)
305 ESIX, a variant of v.5.3 for the 386 (s/esix*)
306 Interactive (ISC) Unix (s/isc*)
307 Sony News (s/newsos*)
308 RTU 3.0, ucb universe (s/rtu.h)
309 UniSoft's UniPlus 5.2 (s/uniplus.h)
311 AT&T UNIX PC model 7300 (m/7300.h)
315 Altos 3068 Unix System V Release 2 (m/altos.h)
319 Berkeley 4.1 (m/bsd4.1.h)
320 Berkeley 4.2 (m/bsd4.2.h)
321 Berkeley 4.3 (m/bsd4.3.h)
322 Celerity (m/celerity.h)
323 clipper (m/clipper.h)
324 convergent S series (m/cnvrgnt.h)
326 Motorola System V/88 machines (m/delta88k.h)
327 Bull DPX/2 range (m/dpx2.h)
328 Dual machines using unisoft port (m/dual.h)
329 Elxsi machine (running enix) (m/elxsi.h)
330 Fujitsu F301 machine (m/f301.h)
332 ibm ps/2 aix386 (m/ibmps2-aix.h)
334 Masscomp 5000 series running RTU, ucb universe (m/masscomp.h)
335 Megatest 68000's (m/mega68.h)
336 Whitechapel Computer Works MG1 (ns16000 based) (m/mg1.h)
337 Harris Night Hawk Series 1200 and Series 3000 (m/nh3000.h m/nh4000.h)
338 ns16000 (m/ns16000.h)
339 National Semiconductor 32000, running Genix (m/ns32000.h)
340 TI Nu machines using system V (m/nu.h)
341 HLH Orion (m/orion.h m/orion105.h)
342 Paragon i860 (m/paragon.h)
343 PFU A-series (m/pfa50.h)
344 Plexus running System V.2 (m/plexus.h)
345 pyramid. (m/pyramid.h)
346 Bull SPS-7 (m/sps7.h)
347 Hitachi SR2001/SR2201 (m/sr2k.h)
351 SEQUENT SYMMETRY (m/symmetry.h)
352 Tadpole 68k machines (m/tad68k.h)
354 targon31 (m/targon31.h)
355 Tektronix* (m/tek4300.h m/tekxd88.h)
356 NCR Tower 32 running System V.2 (m/tower32.h)
357 NCR Tower 32 running System V.3 (m/tower32v3.h)
358 U-station (Nihon Unisys, SS5E; Sumitomo Denkoh, U-Station E30) (m/ustation.h)
360 Honeywell XPS100 running UNIX System V.2 (m/xps100.h)
361 Data General's DG/UX (s/dgux*)
362 Irix before version 6
368 Sun's 386-based RoadRunner (m/sun386.h)
369 Sun3 machines (m/sun3*)
370 Integrated Solutions 386 machine (m/is386.h)
371 Integrated Solutions `Optimum V' -- m68k-isi-bsd4.2 or -bsd4.3
372 Harris Power PC (powerpc-harris-powerunix)
373 Hewlett-Packard 9000 series 200 or 300 on some platforms -- m68k-hp-bsd or
374 m68k-hp-hpux; note m68k-*-netbsd* still works
375 IBM PS/2 -- i386-ibm-aix1.1 or i386-ibm-aix1.2
376 GEC 63 -- local-gec63-usg5.2
377 Tandem Integrity S2 -- mips-tandem-sysv
378 System V rel 0 -- usg5.0
379 System V rel 2 -- usg5.2
380 System V rel 2.2 -- usg5.2.2
381 System V rel 3 -- usg5.3
391 This file is part of GNU Emacs.
393 GNU Emacs is free software: you can redistribute it and/or modify
394 it under the terms of the GNU General Public License as published by
395 the Free Software Foundation, either version 3 of the License, or
396 (at your option) any later version.
398 GNU Emacs is distributed in the hope that it will be useful,
399 but WITHOUT ANY WARRANTY; without even the implied warranty of
400 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
401 GNU General Public License for more details.
403 You should have received a copy of the GNU General Public License
404 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.