-* BUILDING EMACS ON MAC OS 8/9 AND MAC OS X -*- outline -*-
+* BUILDING EMACS ON MAC OS Classic AND MAC OS X -*- outline -*-
-Copyright (c) 2001, 2002 Free Software Foundation, Inc.
+Copyright (C) 2001, 2002, 2003, 2004, 2005,
+ 2006 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim
copies of this document as received, in any medium, provided that
commands at the top-level directory after the source distribution is
un-tarred.
- ./configure
+ ./configure --enable-carbon-app
make
make install
-The last step must be performed as root.
+The last step may fail if you do not have permissions to install. If
+you try to install into /usr (with ./configure --prefix=/usr), then you
+must install as root using the sudo command. However, it is not
+recommended; see the notes section below for more details.
+
+The --enable-carbon-app specifies that the carbon GUI application
+should be installed into /Application. If you want it to install in a
+different location, specify --enable-carbon-app=<mydir>
If you have X Window installed on your Mac and you are building Emacs
to run under Carbon and not X Window, you need to type `./configure
You can type `make bootstrap' instead of `make' to rebuild everything,
including byte-compiling the Lisp files.
-If you have not installed the GNU texinfo package on your system, the
-build will complain that makeinfo cannot be found. Instructions for
-installing the GNU texinfo package are given below. Alternatively,
-you can type `make -k' instead of `make' and safely ignore the error
-messages and use the existing info files.
+If you are compiling on Mac OS X versions before 10.2 and have not
+installed the GNU texinfo package on your system, the build will
+complain that makeinfo cannot be found. Instructions for installing the
+GNU texinfo package are given below. Alternatively, you can type `make
+-k' instead of `make' and safely ignore the error messages and use the
+existing info files.
After Emacs is installed, you can run it by typing `emacs -nw' from a
terminal (make sure your path contains /usr/local/bin) or by
-double-clicking on mac/Emacs.app in the Finder. To start Emacs as a
-GUI application from the terminal, the pathname to the executable in
-the bundle, i.e.,
+double-clicking on /Applications/Emacs.app in the Finder. To start
+Emacs as a GUI application from the terminal, the pathname to the
+executable in the bundle, i.e.,
- .../emacs/mac/Emacs.app/Contents/MacOS/Emacs
+ /Application/Emacs.app/Contents/MacOS/Emacs
must be typed to the shell to enable Emacs to locate its resources
-correctly.
+correctly. You may want to create a symlink or alias to this path to
+quickly access both the terminal and GUI versions.
-If you are building Emacs to run on Mac OS X and X Window, you need to
-create a directory containing statically-linked X libraries.
+If you are building Emacs to run on Mac OS X and X Window,
+instead of typing `./configure' above, type
- sudo mkdir /usr/X11R6/libstatic
- cd /usr/X11R6/libstatic
- sudo ln -s ../lib/lib*.a ../lib/X11 .
+ ./configure --without-carbon --with-x
-Instead of typing `./configure' above, type
-
- ./configure --without-carbon --with-x --x-libraries=/usr/X11R6/libstatic
To use colors in a terminal, put the following lines in the file
~/.termcap and log in again.
:sc=\E7:rc=\E8:cs=\E[%i%d;%dr:
-----
-To build the `info' files, you need to install the texinfo software.
+To build the `info' files in versions prior to Mac OS X 10.2, you need
+to install the texinfo software.
To install from source, obtain texinfo-4.2.tar.gz from ftp.gnu.org or
a mirror. Un-tar it, enter its directory and type
make
make install
-The last step needs to be performed as root.
+The last step may need to be performed as root (sudo make install).
You may also like to install ispell, which will allow you to use
ispell and flyspell-mode. To install ispell from source, you first
./configure --host=powerpc-apple-bsd
make
make install
-
-Again, the last step needs to be performed as root. Note that if you
+
+Again, the last step may need to be performed as root. Note that if you
run `make check', the test for `pr' will fail.
Get and un-tar ispell-3.2.06.tar.gz. Look for it here:
to whomever would like a binary distribution. Here are the common
options to user
---with-x - Use the X11 GUI instead of the Carbon GUI.
+--with-x - Use the X11 GUI instead of the Carbon GUI.
--prefix=DIR - Place the common emacs files in the given DIR. The
default is /usr/local. See note below if placing
in /usr
---without-app - Do not install the carbon gui in /Applications
- This will be commonly used for terminal-only or X
- windows installs.
--self-contained - Place the common emacs files inside the Emacs.app
itself. This makes the application trivial to
uninstall and copy between computers.
---app-symlink - Use a symlink inside the Application to the
+--app-symlink - Use a symlink inside the Application to the
$prefix/bin/emacs to reduce disk space. Note, this
option may removed in the future.
-If you are intending to build a binary distribution for X windows, you
-will probably want to follow the directions above to create static
-X11R6 libraries and run the make-package script like this
-
-./make-package --with-x -C,--x-libraries=/usr/X11R6/libstatic
For usage of other options, use the --help option.
-* BUILDING EMACS ON MAC OS 8/9
-
-You can use either Metrowerks CodeWarrior Pro 6 or MPW-GM (Aug. 2001)
-to build Emacs. MPW-GM can be downloaded free of charge from Apple.
+* BUILDING EMACS ON MAC OS Classic
-In either case, you will need MPW-GM to build the make-docfile utility
-and to generate the doc string file DOC.
+You can use MPW-GM (Aug. 2001) to build Emacs. MPW-GM can be
+downloaded free of charge from Apple.
-### IMPORTANT ### You can use StuffIf Expander to decompress and untar
+### IMPORTANT ### You can use StuffIt Expander to decompress and untar
the distribution. However, you *must* set the radio button in the
Preferences->Cross Platform->Convert text files to Macintosh format to
"Never". Otherwise the compiled Lisp files will be corrupted.
(Optional) A subset of the fonts from the GNU intlfonts-1.2
distribution converted to NFNT format can be obtained from
- ftp://mac-emacs.sourceforge.net/pub/mac-emacs/GNU-fonts.smi.bin
+ http://members.shaw.ca/akochoi-emacs/stories/Resources/GNU-Fonts.smi.bin
To build Emacs in the MPW Shell, simply set the directory to
...:emacs:mac: and build the target Emacs of the make file
-makefile.mpw. I.e., execute the commands
+makefile.MPW. I.e., execute the commands
make Emacs -f makefile.MPW > Emacs.MakeScript
Emacs.MakeScript
-To build Emacs using CodeWarrior, start up the CodeWarrior IDE, choose
-File->Import Project... and select the file cw6-mcp.xml. When
-prompted to save the project, navigate to same directory as the file
-cw6-mcp.xml, name the project emacs-cw6.mcp, and save it there. Then
-choose Project->Make. Note that this does not build the DOC file. To
-do so, use MPW and build the target "Doc" in makefile.MPW.
-
-Once built, the Emacs application (Emacs CW or Emacs MPW) can be
-launched where it is created.
+The above commands create an executable that uses the Carbon API.
+The non-Carbon version can also be created by replacing all the
+occurrences of `Emacs' above with `NonCarbon'. Not that the
+non-Carbon version does not support some features such as file
+dialogs, drag-and-drop, and Unicode menus.
-To build an optimized version of Emacs in CodeWarrior, change the
-value in the Emacs Settings->Code Generation->Global Optimization
-dialog. To build a version for profiling, check the Profiler
-Information box in the Emacs Settings->Code Generation->PPC Processor
-dialog and include the Profiler PPC.Lib library.
+Once built, the Emacs application (Emacs MPW) can be launched where it
+is created.
* NOTES
-Emacs should build and run on a PowerMac running Mac OS 8.6 - 10.2.
+Emacs should build and run on a PowerMac running Mac OS 8.6 - 9.2 (but
+only tested on 9.2.2), and Mac OS X 10.1 - 10.4.
You will need around 100 MB of disk space for the source files and
intermediate files.
-It will not run on machines running Mac OS 8/9 with more than 256 MB
-of physical or virtual memory. It does not have this restriction when
-it is run under Mac OS X. But the usual 128MB buffer limit of a
-32-bit Emacs still exists.
-
-Under Mac OS 8/9, there is no support for building the LEIM directory.
-However, it can be built on Mac OS X or another platform and
-transferred to the Mac.
-
-On Mac OS 8/9, to use the same icon as when Emacs is built on Windows
-NT, define GNU_ICON in mac/src/Emacs.r. Currently Emacs uses a
-generic application icon on the Mac OS X. A better looking one is
-coming soon.
+Under Mac OS Classic, there is no support for building the LEIM
+directory. However, it can be built on Mac OS X or another platform
+and transferred to the Mac.
On Mac OS X, installing the emacs files in /usr can cause issues with
-system sofware updates possibly overwriting the distribution. If this
+system software updates possibly overwriting the distribution. If this
is a concern, as it should be in normal binary distributions, please
use /usr/local as the prefix for installation.
-Enjoy!
+Emacs supports both PowerPC and Intel-based Macintoshes. However,
+due to the unexec process that Emacs uses to dump core, it is not
+possible at this time to generate a universal binary that supports both
+architectures. In addition, Rosetta doesn't appear to work correctly
+with PowerPC builds of Emacs; you will have to recompile for Intel.
+Therefore, builds of Emacs are architecture specific.
+
+There are some compile-time flags that enable experimental features.
+Please use them at your own risk after reading the corresponding
+threads in the emacs-devel@gnu.org archive.
-Andrew.
-<akochoi@mac.com>
+ SELECT_USE_CFSOCKET (on Mac OS X): Avoid polling in sys_select (in
+ src/mac.c).
+ http://lists.gnu.org/archive/html/emacs-devel/2004-12/msg00789.html
+
+ USE_ATSUI (on Mac OS 9/Carbon): Enable ATSUI (Apple Type Services
+ for Unicode Imaging) support.
+ http://lists.gnu.org/archive/html/emacs-devel/2005-10/msg00005.html
+
+Enjoy!