2012年10月18日木曜日

Emacs24.2:Macbookairに入れてみる。H241016

久しぶりのEmacsネタ

Emacs24がリリースされ、大分経って、ビルト方法も充実してきました。試してみます。

参考リンク

http://blog.be-open.net/emacs/mac-emacs24-1-install-no-brew/

http://sakito.jp/emacs/emacs24.html

前者は24.1で、後者が24.2ですが、分かりやすいのは前者です。ちなみに、xcodeを入れないと多分ダメです(省略)。


それで、新しいものを入れるということで前者に沿って後者を組み合わせて入れることにします。

まず、作業ディレクトリsrcを作成


mkdir src
移動です。後にenterを押すのはいうまでもありません。
cd src
つぎに、

EMACS_VER=24.2
curl -O http://ftp.gnu.org/pub/gnu/emacs/emacs-${EMACS_VER}.tar.gz

後者のリンクを使います。結果的に前者とは、24.1→24.2と変わっているだけです。ファイルが、src内に保存されます。


tar xvfz emacs-${EMACS_VER}.tar.gz
解凍。src内に解凍。src内に、emacs-24.2ディレクトリが出現します。



mkdir emacs24patch

前者のリンクにしたがって、scr内に、emacs24patchディレクトリを作成


cd emacs24patch

移動ですね。




svn co http://svn.sourceforge.jp/svnroot/macemacsjp/inline_patch/trunk inline_patch

git clone git://gist.github.com/2862477.git


パッチをダウンロードです。



cd emacs-${EMACS_VER}

ここで悩む。そんなディレクトリはねえええ!と言われる。あるのに。





cd emacs-24.2


指定するといけました。

これでパッチを当てます。インラインパッチと、lionパッチですね。



patch -p0 < ../emacs24patch/inline_patch/emacs-inline.patch

patch -p0 < ../emacs24patch/2862477/emacs-24.1-lion-fullscreen.patch



当てます。1つずつやったほうがいい具合でした。なんでかは知りません。


./configure --with-ns --without-x

で、やると、リンクのようにエラーが出ます。autoconf,automakeがないエラーです。リンクにしたがって、


brew install autoconf
すると、そもそも、brewがねえ!と言われます。入っていなかったらしいです。原因はxcodeが古かったようです。しかたがないので、

http://mxcl.github.com/homebrew/

に書いてある。

ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"
で、インストールします。一旦ターミナルを終了させて最初のところで操作しました。

それで改めて、


brew install autoconf
brew install automake
さらにシンボリックリンク
brew ln autoconf
brew ln automake
いうまでもないですが、「l」(エル)です。なんか、違うところに、既にリンクがある!と言われて、参考リンクのとおりになっていないようですが、そのまま、


./configure --with-ns --without-x
で、通りました!


make bootstrap
make install 
で、 emacs-24.2の中、nextstep内に、emacs.appがアイコン付きで現れます。やったあ!

emacs.appを、リネームして、emacs24.2.appにして、アプリケーションに放り込むと、23と別に併存することができます。

起動は、できますが、init.elでエラーが出て最後まで読み込めませんw

とにかく、いけましたので。メモ的に書いておきます。
………………………………………………………………………………
H241018追記

init.el
のエラー削除するには、地道ですが、確実な方法があります。

参考リンク
http://piko.hateblo.jp/entry/2012/04/17/090253

問題ありそうな所を、選択(C-SPC,C-a or C-e)して、

M-x eval-region
です。
問題なければ、正しいということで、次を選択・・・
と繰り返します。

選択して、エラーが出れば、その中に問題があります。

地道ですが、確実です。

面倒なので、しばらく23で・・・
………………………………………………………………………………