end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

msys2 + mingw for win 10 64bitで、emacs 25.3 をbuild

emacs24.5をwin10 + USキーボードへ引っ越し後、動作が不安定

先日、PC買換えに伴い、OSもwin7 → win 10(64bit)へ移行。

NTemacsは、win7で動作していた emacs-24.5-IME-patched を そのままcopyして利用していますが、どうもIMEの動作がおかしい。

  • google日本語入力の変換suggest窓が表示されない
  • IME=on/off切換え不可になることがあり、「winキー+SPACE」や「ALT+~」のおまじないで復活

のような状態。 ただ...上記2) は、win10というよりwin10 + USキーボードの影響な気もしています。

ググっても、解消につながる情報は得られないので、 試しに emacsをbuildしてみることにしました。

msys2 + mingw for win 10 64bitで、emacs 25.3 をbuild

msys2 の install

windowsunix的な環境といえば、cygwinを使用してきましたが、 今回は、msys2をinstall

参考url

といっても、msys2自体は以下のurlよりダウンロードし、 インストーラを実行するのみでOK

http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20180531.exe

msys2 の 最新化? 更新?

msys2 コンソール? / shell?を起動し、以下を実行

## パッケージ管理のDB更新とpacmanのinstall
MSYS2 $ pacman -Sy pacman

## 一旦、MSYS2 を再起動し、以下を実行

MSYS2 $ pacman --needed -S bash pacman pacman-mirrors msys2-runtime

## MinGWのinstall
MSYS2 $ pacman -S base-devel msys2-devel mingw-w64-i686-toolchain mingw-w64-x86_64-toolchain

emacs 25.3 の build

参考url

【Windows/msys2】Emacs 25.3の64bit版をビルドする | The modern stone age. msys2 を使用して Windows 10 に Emacs 25.0.94.2 (IMEパッチ適用) を導入した - blechmusikの日記

buildに必要なpackageをinstall

MSYS2 $ pacman -Sy
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

emacs 25.3 + IME patchのbuild

MSYS2 $ wget http://ftp.gnu.org/gnu/emacs/emacs-25.3.tar.xz
MSYS2 $ wget https://codeload.github.com/gist/8c20b904c9f5e588ba99/zip/ce3af256814df287e2da594bc55e178674353abd
MSYS2 $ unzip ce3af256814df287e2da594bc55e178674353abd
MSYS2 $ patch.exe -p0 < ../emacs-25.3-w32-ime.diff

MSYS2 $ autogen.sh
MSYS2 $ CFLAGS='-Ofast -march=x86-64 -mtune=corei7 -static' \
             ./configure --without-dbus --without-compress-install --with-modules
## ↓make       
MSYS2 $ make bootstrap

## ↓make install
MSYS2 $ make install-strip

emacs 25.3 の build

MSYS2 $ runemacs

emacsのbuildや実行は、何の問題もなく完了しましたが、 「ALT+~」でIMEに切り替わらず...

で、今回は、ここまでにしておきます