177 lines
6.7 KiB
Plaintext
177 lines
6.7 KiB
Plaintext
Emacs machines list
|
|
|
|
Copyright (C) 1989-2026 Free Software Foundation, Inc.
|
|
See the end of the file for license conditions.
|
|
|
|
This is a list of the status of GNU Emacs on various machines and systems.
|
|
|
|
Information about older releases, and platforms that are no longer
|
|
supported, has been removed. Consult older versions of this file if
|
|
you are interested in this information.
|
|
|
|
The 'configure' script uses the configuration name, and the results of
|
|
testing the system, to decide which options to use in src/config.h and
|
|
elsewhere (eg Makefiles).
|
|
|
|
If you add support for a new configuration, add a section to this
|
|
file, and edit the 'configure.ac' source as needed.
|
|
|
|
|
|
* Here are notes about some of the systems supported:
|
|
|
|
** GNU/Linux
|
|
|
|
Most of the complete systems which use the Linux kernel are close
|
|
enough to the GNU system to be considered variant GNU systems. We
|
|
call them "Linux-based GNU systems," or GNU/Linux for short.
|
|
|
|
It is not coincidence that many of the other components used with
|
|
Linux--including GNU Emacs--were developed specifically for the GNU
|
|
project. The GNU project was launched in 1984 to develop a free
|
|
complete Unix-like operating system. To reach this goal, we had to
|
|
develop whatever system components were not available as freely
|
|
redistributable software from some other source.
|
|
|
|
The GNU project wants users of GNU/Linux systems to be aware of how
|
|
these systems relate to the GNU project, because that will help
|
|
spread the GNU idea that software should be free--and thus encourage
|
|
people to write more free software. For more information, see
|
|
<https://www.gnu.org/gnu/linux-and-gnu.html>.
|
|
|
|
*** 64-bit GNU/Linux
|
|
|
|
No special procedures should be needed to build a 64-bit Emacs on a
|
|
64-bit GNU/Linux system. To build a 32-bit Emacs, first ensure that
|
|
the necessary 32-bit system libraries and include files are
|
|
installed. Then use:
|
|
|
|
./configure CC='gcc -m32' --build=i386-linux-gnu \
|
|
--x-libraries=/usr/X11R6/lib
|
|
|
|
(using the location of the 32-bit X libraries on your system).
|
|
|
|
*** IBM System/390 running GNU/Linux (s390-*-linux-gnu)
|
|
|
|
As of Emacs 21.2, a 31-bit only version is supported on this system.
|
|
|
|
*** SuperH (sh[34]*-*-linux-gnu)
|
|
|
|
Emacs 23.0.60 was reported to work on GNU/Linux (October 2008).
|
|
This was tested on a little-endian sh4 system (cpu type SH7751R) running
|
|
Gentoo Linux 2008.0.
|
|
|
|
** macOS
|
|
|
|
Mac OS X 10.6 or newer. Both AArch64 (Arm) and x86-64 systems are
|
|
supported, but PowerPC is not supported. For installation
|
|
instructions see the file nextstep/INSTALL.
|
|
|
|
** Microsoft Windows
|
|
|
|
For installation instructions see the file nt/INSTALL.
|
|
|
|
** MS-DOS
|
|
|
|
For installation instructions see the file msdos/INSTALL.
|
|
See the "MS-DOS" chapter of the manual for information about using
|
|
Emacs on MS-DOS.
|
|
|
|
** Solaris
|
|
|
|
On Solaris it is also possible to use either GCC or Oracle Developer
|
|
Studio to build Emacs, by pointing ./configure to the right compiler:
|
|
|
|
./configure # Defaults to 'gcc' if available.
|
|
./configure CC='cc' # Oracle Developer Studio
|
|
|
|
On Solaris, do not use /usr/ucb/cc. Use Oracle Developer Studio.
|
|
Make sure that /usr/ccs/bin and the Oracle Developer Studio bin
|
|
directory (e.g., /opt/developerstudio12.6/bin) are in your PATH
|
|
before /usr/ucb. (Most free software packages have the same
|
|
requirement on Solaris.) With this compiler, use 'cc -E' as the
|
|
preprocessor. If this inserts extra whitespace into its output (see
|
|
the PROBLEMS file), add the option '-Xs'.
|
|
|
|
To build a 64-bit Emacs (with larger maximum buffer size) on a
|
|
Solaris system that defaults to 32-bit executables, specify the -m64
|
|
compiler option. For example:
|
|
|
|
./configure CC='gcc -m64' # GCC
|
|
./configure CC='cc -m64' # Oracle Developer Studio
|
|
|
|
** Haiku
|
|
|
|
On 32-bit Haiku it is required that the newer GCC 8 be used, instead
|
|
of the legacy GCC 2 used by default. This can be achieved by
|
|
invoking configure inside a shell launched by the 'setarch' program
|
|
invoked as 'setarch x86'.
|
|
|
|
When building with packages discovered through pkg-config, such as
|
|
libpng, on a GCC 2/GCC 8 hybrid system, simply evaluating 'setarch
|
|
x86' is insufficient to ensure that all required libraries are found
|
|
at their correct locations. To avoid this problem, set the
|
|
environment variable 'PKG_CONFIG_PATH' to the GCC 8 pkg-config
|
|
directory at '/system/develop/lib/x86/pkgconfig/' before configuring
|
|
Emacs.
|
|
|
|
If GCC complains about not being able to resolve symbols such as
|
|
"BHandler::LockLooper", you are almost certainly experiencing this
|
|
problem.
|
|
|
|
Haiku running on non-x86 systems has not been tested. It is
|
|
anticipated that Haiku running on big-endian systems will experience
|
|
problems when Emacs is built with Haiku windowing support, but there
|
|
doesn't seem to be any reliable way to get Haiku running on a
|
|
big-endian system at present.
|
|
|
|
The earliest release of Haiku that will successfully compile Emacs
|
|
is R1/Beta2. For windowing support, R1/Beta3 or later is required.
|
|
|
|
** Android
|
|
|
|
Emacs is known to run on all Android versions from 2.2 onwards, on
|
|
Linux kernel 2.26.29 or later.
|
|
|
|
Android 2.2 has only been tested on ARM. mips64 has not been
|
|
tested, but builds. With these exceptions, Emacs is known to run on
|
|
all supported versions of Android on all supported machines: arm,
|
|
armv7, arm64, x86, x86_64, and mips.
|
|
|
|
See the file java/INSTALL for detailed installation instructions.
|
|
|
|
It is also possible to build Emacs for Android systems without using
|
|
GUI capabilities provided by the Android port. We do not know
|
|
exactly which configurations this works on, but the installation
|
|
instructions for such a build should be the same as for any Unix
|
|
system. (This does in turn imply that such a build must be carried
|
|
out on an Android device itself utilizing development tools provided
|
|
by third party package repositories.)
|
|
|
|
|
|
* Obsolete platforms
|
|
|
|
Support for many obsolete platforms was removed in Emacs 23.1.
|
|
If for some reason you encounter an ancient machine where current
|
|
Emacs does not compile, try an older release like Emacs 22.3.
|
|
|
|
|
|
Local variables:
|
|
mode: outline
|
|
fill-prefix: " "
|
|
End:
|
|
|
|
This file is part of GNU Emacs.
|
|
|
|
GNU Emacs is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
GNU Emacs is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
|