emacs23.1のビルド
emacs上でWindowsのIMEを利用するためには、emacsにIMEパッチを当ててコンパイルする必要があると知りました。
ちょっと興味があったので、emacs23.1のコンパイルを行ってみることにします。
作業の内容の殆どは、「NTEmacs 23.1 + IMEパッチ適用ビルドメモ」の通りに行っています。
ビルド環境の準備
emacsのビルドを行うために、コンパイラやGNU関連のツールを導入します。
MinGWのインストール
GNUWin32関連のインストール
- http://gnuwin32.sourceforge.net/packages.html より、以下のComplete packageをダウンロードします。
- ダウンロードした各Complete Packageを実行してインストールします。
GNU EmacsとIMEパッチのダウンロード
- http://ftp.gnu.org/pub/gnu/emacs/ より、emacs-23.1.tar.gzをダウンロードします。
- C:\build以下にemacs-23.1.tar.gzを展開します。
- http://sourceforge.jp/projects/ntemacsjp/ から、23.1用のIMEパッチ、Emacs-23.1-IME.patch.gzをダウンロードします。
- C:\build以下にEmacs-23.1-IME.patch.gzを展開します。
パスの追加
ビルドを行うのに、C:\MinGW\binとC:\Program Files\GnuWin32\binにパスを通しておきます。
パッチの適用
emacs23.1のソースにIMEパッチを適用します。
C:\>cd c:\build\emacs-23.1 C:\build\emacs-23.1>patch -p3 < ..\Emacs-23.1-IME.patch patching file lib-src/makefile.w32-in patching file lisp/loadup.el patching file nt/configure.bat patching file src/keyboard.c patching file src/w32.c patching file src/w32fns.c patching file src/w32term.c patching file src/w32term.h patching file src/window.c patching file lisp/international/w32-ime.el
emacsのビルド
1. configureを行います
C:\>cd c:\build\emacs-23.1\nt C:\build\emacs-23.1\nt>configure --prefix=c:\emacs --cflags -I/progra~1/gnuwin32/include --ldflags -L/progra~1/gnuwin32/lib --no-opt --no-debug --enable-w32-ime --cflags -D_UNICODE --cflags -DRECONVERSION
2. makeを実行します。以下のエラーで止まります。
C:\build\emacs-23.1\nt>mingw32-make ... ... ... mingw32-make[1]: *** No rule to make target `../lisp/international/w32-ime.elc', needed by `DOC'. Stop. mingw32-make[1]: Leaving directory `c:/build/emacs-23.1/lib-src' mingw32-make: *** [all-other-dirs-gmake] Error 2
3. w32-ime.elをバイトコンパイルします。すでにインストール済みのemacsを利用します。
C:\build\emacs-23.1\nt>cd C:\build\emacs-23.1\lisp\international C:\build\emacs-23.1\lisp\international>emacs -batch -f batch-byte-compile w32-ime.el
4. 再度、makeを実行します。
C:\build\emacs-23.1\lisp\international>cd c:\build\emacs-23.1\nt C:\build\emacs-23.1\nt>mingw32-make
5. インストールを行います。
C:\build\emacs-23.1\nt>mingw32-make install
6. c:\emacsにインストールが行われます。