gnupack-pretest_devel-2018.11.25でemacsが動かない
はじめに
gnupack-pretest_devel-2018.11.25でemacsが動かない(startup_emacs.exe,startup_emacscliend.exeどちらをダブルクリックしてもemacsが動かない.何も起こらない)場合の対策をまとめた.
結論
コマンドライン(startup_cygwin.exe)から以下のコマンドを打ってlibgif7をインストール.その後,emacsを動かす(startup_emacs.exe).
$ apt-cyg install libgif7
詳細その1(コマンドラインからemacsを動かす)
コマンドライン(startup_cygwin.exe)からemacsを動かしてみる.以下のエラーメッセージが出たら,今回の内容に該当する.
$ emacs
C:/Users/foo/Desktop/gnupack-pretest_devel-2018.11.25/app/cygwin/emacs/bin/emacs.exe: error while loading shared libraries: cyggif-7.dll: cannot open shared object file: No such file or directory
ちなみに,apt-cyg show
で一覧を確認すると,libgif4はあるがlibgif7はない.
詳細その2(libgif7をインストール)
以下のコマンドでlibgif7をインストール
$ apt-cyg install libgif7
libgif7をインストールしようとしたら,他も全部アップデートした方が良いよ(apt-cyg dist-upgrade
)と言われるかもしれない.やらなくても良いと思うが,実行した.なお,apt-cyg dist-upgrade
を実行してもlibgif7は入らないので,改めてインストールする.
$ apt-cyg install libgif7
Warning: /etc/setup/installed.db version is less than 3.
Before continuing, recommend to execute below command:
apt-cyg dist-upgrade
Do you continue? [y/N] N
abort
$ apt-cyg dist-upgrade
$ apt-cyg install libgif7
apt-cygが動かない場合
何らかの理由でapt-cygが動かない場合の手順は以下の通り.
- cygwinのミラーサイトからliggif7-5.1.4-1.tar.xzをダウンロードする.
- 展開して
gnupack-pretest_devel-2018.11.25\app\cygwin\cygwin\bin
にコピー.
-p
オプションでプロキシを指定するとapt-cygが動くかも.
参考
追記(2022-08-21)
gnupackを再インストールしたらlibgif7がインストールできなくなったので追記.
発生までの手順
- gnupackをダウンロードする.ファイルはgnupack-pretest_devel-2018.11.25.exe.
- exeファイルを実行して適当なフォルダに展開する.
startup_cygwin.exe
でbashを動かす.apt-cyg
でlibgif7
をインストールしたら,以下のエラーが発生.
# apt-cyg install libgif7
Warning: /etc/setup/installed.db version is less than 3.
Before continuing, recommend to execute below command:
apt-cyg dist-upgrade
Do you continue? [y/N] y
continue
Cache directory is /setup
Mirror is http://ftp.jaist.ac.jp/pub/cygwin
chmod: '/setup/.apt-cyg' のパーミッションを変更しています: Invalid argument
Error: cannot initialize directory /setup/.apt-cyg
対策
-
githubから
apt-cyg
をダウンロード. gnupack-pretest_devel-2018.11.25\app\script
にあるapt-cyg
を入替える.バージョン(apt-cyg --version
)はどちらも0.57なので,混乱しないように.apt-cyg dist-upgrade
でパッケージを最新化.apt-cyg install libgif7
でlibgif7をインストール.