寿司はやっぱり江戸前に限るように、Emacsは自分でビルドするに限ると日頃から思っております。

Lisperではないので、Emacsのソースを読んでもわからないことだらけです。しかし、絶賛開発中の最新ソースからビルドした活きのいいEmacsを使うのが本当のEmacsユーザーなのです。

最新ソースからビルドしていると、コンパイルエラーのトラブルなどに遭遇することがあります。自分で原因を調べるのもよし。エラーが修正されるのを待つもよし。当たり前のことだと思って気長に待つのがいいでしょう。

今回は、 Mac OS X でEmacsをソースからビルドしてみます。特におもしろい情報があるわけではないのですが。

ソースの取得

作業用のディレクトリを/home/hoge/emacs-sourceとして説明します。

作業用ディレクトリへ移動

$ cd /home/hoge/emacs-source

ソースを取得

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

そのままmasterブランチでビルドしています。

ビルドの実行には、次のようなスクリプトを作成しています。

$ vi /home/hoge/emacs-source/build-emacs.sh

内容はこんな感じです。

#/bin/sh
cd /home/hoge/emacs-source
git clean -X -f
git pull
./autogen.sh
./configure --with-ns 
make bootstrap
make install

このスクリプトは毎回、初期状態からビルドしたいため、 git cleanmake distclean を実行しています。

git clean -X -f は、gitignoreの対象になっているファイルをすべて削除してくれるコマンドです。また make distclean もオブジェクトファイルなどを削除します。

前回からの差分だけをビルドしたい場合は、 git clean と make distclean は省略してください。

ビルドが完了すると、次のバンドルが作成されているはずです。 /home/hoge/emacs-source/nextstep/Emacs.app これを必要に応じて/Applicationsディクトリへ移動すれば完了です。

補足

記事を書いている途中で気付いたのですが、お使いのMacでプログラミング環境を構築されていない場合、Xcodeや開発用コマンドのインストールが必要になるかもしれません。