I’m currently running Emacs 29 on macOS’s Terminal.app, built from source without a window system.
GNU Emacs 29.0.60 Development version 679f528b953a on emacs-29 branch; build date 2023-03-10.
My current version was build with the following
"ACL GMP GNUTLS JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE PDUMPER SQLITE3 THREADS TREE_SITTER XIM ZLIB"
Build & install
First, clone Emacs from Savannah’s git repository to
emacs-29 through the
--branch flag, git automatically fetches the branch for the upcoming Erlang 29 release:
git clone --branch emacs-29 https://git.savannah.gnu.org/git/emacs.git ~/emacs
After switching to the
~/emacs directory, run
autogen.sh to generate the
Then, run the newly-generated
./configure with the following options1:
- Without NextStep (or AppKit) support, needed to build a graphical user interface.
- No X window support either, which is used as a fallback.
- Compile with the Emacs Lisp native compiler
- By default, tree-sitter support is enabled only if the dependency is installed. Turning it on explicitly makes the configuration raise an error when tee-sitter isn’t installed.
./configure --without-x --without-ns --with-native-compilation --with-tree-sitter
If the repository was checked out previously and you don’t want to update the configuration flags, upgrade the installed version of Emacs by switching to
~/emacs, pulling in recent changes, running
cd ~/emacs git checkout emacs-29 git pull origin emacs-29 make sudo make install
Find more configuration options with .↩︎