あさた研メモ

主に私が気づいたこととか困った時のメモとか書き留めとく用。

Emacs を自分でビルドしよう (MacOS)

この記事は Emacs Advent Calendar 2023 の 7 日目の記事です。

qiita.com

はじめに

みなさんは自分の好きなエディタはありますか?

私はなんだかんだいってEmacsを愛用しています。

自分で使うツールは自分でビルドしたいですよね?

ということで、Emacsをパッケージマネージャなどを使わずに自分でビルドして入れる方法を紹介します。

私の環境

必要なものを揃える

XCode の Command line tools と、Homebrew は用意しておきましょう (大体の人は入れてると思いますが)。

libgccjit が必要になるので入れます。

$ brew install libgccjit

ビルドの仕方

まずは git プロジェクトの clone

$ git clone git://git.sv.gnu.org/emacs.git

次に、自分が使いそうなオプションを追加して configure します。
git switch などで特定のリリースをビルドしましょう。

私は master ブランチのままビルドしています。

configure するときにいくつか引数を渡すことで、特定のビルドオプションを ON / OFF できます。 詳しくはここに書いています。

github.com

絶対に入れておくべきなのは、--with-native-compilation です。 Emacs 28 以降、Native Compile にすることで高速に使うことができます。

$ cd ./emacs
$ git pull
$ ./autogen.sh
$ ./configure --with-native-compilation \
            --without-x \
            --with-ns \
            --with-imagemagick \
            --with-json

ここまできたら、あとは build のみです。

$ make bootstrap
$ make install

configure や bootstrap 中にエラー終了することがありますが、気づきにくいのでよくログを見ておきましょう。

たいていはなにかのパッケージが足りてないので、都度エラーの内容から入れるべきパッケージを入れましょう。

make install が終わると、 nextstep/ 配下に Emacs.app ができているので、これを /Application 内に移動して完了です。

注意点

結構ビルドが失敗する要因として、libgccjitopenssl のバージョンです。

Emacs のバージョンによって最低要件のバージョンなどがあるので、コケたらよく調べておきましょう。

さいごに

「ビルドがコケたら」の話は人それぞれなのと、Emacs を自分でビルドして使いたい人はビルド環境などを調べるのも好きな人が多いと思うので、
解決方法を根気よく探しましょう。

Emacsオープンソースでビルドが簡単なので、ぜひ思い思いのオプションをつけてビルドしてみましょう!

お世話になった記事

はじめてビルドするとき、大変お世話になりました。

blog.tomoya.dev