Win8.1でgnupack11 の emacs で cygwinマウントに失敗
現象
OSをWindows 8.1(x64)にアップグレードした。gnupack 11.0 の emacs を起動した。下記のエラーが表示された。
Warning (initialization): An error occurred while loading `c:/XXXXXXXXX/home/.emacs.d/init.el':
error: Cannot parse output from `mount': 0 [main] mount 11076 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer. Please report this problem to
To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file. Start Emacs with
the `--debug-init' option to view a complete error backtrace.
原因
Windows 8 では問題がなかったので Windows 8.1 特有の問題が発生したらしい。 -–debug-init で起動してみたところ、cygwin-mount.el で mount.exeの実行結果を解析中に次のエラーが発生したようだ。
0 [main] mount 11076 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer. Please report this problem to
調べてみると、同じような現象に遭遇している人がいた。
「Win8.1/x86 でのemacs (2013-11-04 23:18, 匿名, #70688) 」
http://sourceforge.jp/projects/gnupack/forums/22824/34692/
やはり、Cygwinの問題のようだ。確かにWin8.1未対応のCygwin.batを実行すると同じエラーが表示された。
対応方法
とりあえず、入れっぱなしにしていたCygwinをアンインストール後、下記の本家サイトへアクセス:
Cygwin - Installing and Updating Cygwin Packages
そして、setup-x86_64.exeをダウンロードして実行した。インストールログはこんな感じ:
2014/01/28 22:16:26 Starting cygwin install, version 2.831
2014/01/28 22:16:26 User has NO backup/restore rights
2014/01/28 22:16:26 Attempting to elevate to Administrator
2014/01/28 22:16:26 Writing messages to log files without exiting
Cygwin64 Terminal を実行してエラーが表示されないことを確認した。
gnupack の下記のフォルダをリネームした。
<gnupack-11>\app\cygwin\cygwin → cygwin_old
cygwin_old のあった場所に新しいcygwin64を丸ごとコピーしてリネームした。
<gnupack-11>\app\cygwin\cygwin64 → cygwin
cygwin_oldにあった下記のファイルとフォルダをcygwinにコピーした
buf
sbin/
gnupack11のemacsを起動して、エラーが表示されないことを確認した。
まあ、少し不安は残るが、しばらく、このまま様子をみることにした。
この記事へのコメント