2014-10-29

Yosemite で Emacs.app (24.4) をコンパイルしたメモ

OS X 10.10 Yosemite で、最新の Emacs 24.4 をインストールした。せっかくなので、普及にと Emacs.app を zip に固めて配布したのだけど、「問題が起きたため、Emacs を開けません。」とエラーが出た。

brew で入れたパッケージは数知れず。正直、把握できてない。変なコンパイルになってるかもしれないけれど、一応、やったことをメモしておく。

Emacs.app の作成

$ tar xf ~/Downloads/emacs-24.4.tar.gz
$ cd emacs-24.4
$ ./configure --with-ns --without-x
$ CFLAGS=`xml2-config --cflags` make
$ make install

CFLAGS は pkg-config が libxml2 の PATH を正しく返さないことへの対処 (参考: Emacs-24.4 on OSX Yosemiteのビルド手順詳細 / マスタカの ChangeLog メモ)。make install に sudo は使わない。Emacs.app は nextstep ディレクトリー下に出来る。

Finder で zip に固めて、適当なストレージ・サービスを通じて配布。

すると、冒頭に書いたエラーが出たと報せが入った。

原因は gnutls

/usr/local/lib/libgnutls.28.dylib がなくて Emacs は落ちていた。そういえば、コンパイル前に brew で gnutls を入れたっけね。じゃあ、配布先でも同じように gnutls を入れてもらえば問題解決かな?

$ brew install gnutls

少くとも一人は成功した。

他にも落とし穴があるかもしれない。適宜、ブログの記事にしていくつもり。

2 comments:

  1. > CFLAGS は pkg-config が libxml2 の PATH を正しく返さないことへの対処

    上の記事にも書きましたが`xcode-select --install`すれば必要なくないですか?

    ReplyDelete
    Replies
    1. コメントありがとうございます。
      xcode-select --install 済の環境で、libxml2 回りの問題に悩まされたように記憶しているのですが、Emacs 24.4 をコンパイルした環境は、既に色々と手を入れてしまって、xcode-select --install が必要だったかどうか分からなくなってしまいました。検証できず、すみません。

      Delete