Home > Archives > October 2016

October 2016

Windows 用に emacs を MinGW/MSYS2 でコンパイルする

毎度 Windows 用の emacs のバイナリをどこから手に入れるか悩ましいので,自前でコンパイルしてしまえとやってみた.

とりあえず,IME パッチの README を参考に emacs 25 をば.

1.MinGW のツールチェインなどを MSYS2 に入れる.画像まわりのライブラリとか必要そうなのをテキトウに投入.

pacman -S base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-xpm-nox mingw-w64-x86_64-libtiff mingw-w64-x86_64-giflib mingw-w64-x86_64-libpng mingw-w64-x86_64-libjpeg-turbo mingw-w64-x86_64-librsvg mingw-w64-x86_64-libxml2 mingw-w64-x86_64-gnutls

2.MSYS2 の MinGW 64bit のシェルを起動する.環境変数を適切に設定すりゃいいのかもしれないけれど面倒なのでスタートメニューから起動するのが楽.

3.git clone で emacs 25 のソース取ってくる.とりあえず /d/etc/emacs-build/ で作業するとして.git の古い履歴はいらんので浅く clone.

cd /d/etc/emacs-build/
git clone --depth=1 -b emacs-25 git://git.savannah.gnu.org/emacs.git

4.IMEパッチをゲットして適用する.

cd emacs
wget https://gist.githubusercontent.com/rzl24ozi/8c20b904c9f5e588ba99/raw/0d5694e22a70cb3ea639f27013e4134c9772f1ed/emacs-25.1-w32-ime.diff
patch -p 0 < emacs-25.1-w32-ime.diff

5.コンパイルする.折角なので -Ofast -march=native で速いバイナリを.インストール先を /d/etc/emacs-built/ とかにしてみる.

./autogen.sh
CFLAGS='-Ofast -march=native' ./configure --prefix=/d/etc/emacs-built --without-imagemagick
make -j4
make install

以上の流れで普通に動くものができた.思いのほか楽.めでたしめでたし.

追記:libwinpthread-1.dll が無いって怒られたら C:\msys64\mingw64\bin のあたりから持ってくる?

Home > Archives > October 2016

Search
Feeds

Page Top