The main source of this intallation process is from Gene Goykhman’s website https://goykhman.ca/gene/blog/2024-08-17-upgrading-to-emacs-294-on-apple-silicon-macs.html
1 Update and Install Dependencies: Before installing Emacs 29.4, make sure that you updated or reinstalled the Xcode command line tools:
sudo rm -rf /Library/Developer/CommandLineTools xcode-select –install
brew update, and re/installed the dependencies:
brew update brew reinstall gcc brew install libgccjit texinfo tree-sitter jansson
2. Download a fresh copy of Emacs 29.4
git clone https://bitbucket.org/mituharu/emacs-mac
cd emacs-mac
git checkout work
3. autoreconf -i
autoreconf -i
4. ./configure
./configure –with-native-compilation –with-modules –enable-mac-app –with-xwidgets –with-tree-sitter –prefix=/Applications/Emacs.app/Contents/Resources
5. make
6. You can test if emacs is working
src/emacs -Q
7. Make check just because…
make check
make install
8. Emacs.app can be found in this path: $Home/emacs-mac/mac/Emacs.app/Contents/MacOS/Emacs
But you would need to manually move some files:
mkdir -p mac/Emacs.app/Contents/Resources/share/emacs/29.4
mv lisp mac/Emacs.app/Contents/Resources/share/emacs/29.4
mv etc mac/Emacs.app/Contents/Resources/share/emacs/29.4
mv native-lisp mac/Emacs.app/Contents
9. I tried clicking on Emacs.app but it didn’t work until I created a symlink. This will create an icon in your application folder and from there you can launch Emacs 29.4:
ln -s /Users/(home directory)/emacs-mac/mac/Emacs.app /Applications/Emacs.app
If you can’t find the complete direct path of Emacs.app, simply drag the file to the terminal. ln -s (drag the Emacs.app here to get the direct path) (type in the location of where you want to place the linked app)
10. Since I am using Doom Emacs I need to sync my config and update the env with Emacs, and sync again just to be sure.
Doom sync Doom env Doom sync
11. Launch Emacs.app from the Application folder. You might need to M-X pdf-tools-install, and there might be a warning message regarding sqlite not finished loading. Just wait for a minute or so then M-X doom/restart and you’ll be fine.
Enjoy!