ハードなソフトの話

アクセスカウンタ

zoom RSS gnupack12: startup_rebaseall.exeってなんだろう?

<<   作成日時 : 2015/04/05 14:06   >>

ブログ気持玉 0 / トラックバック 1 / コメント 0

startup_template.exe と startup_rebaseall.exeの違い

gnupackが12になって、startup_*.exeという起動用プログラムが追加された。cygwin, emacs, gvim は、startup_*.exeを使って、直接起動できるとUser’s Guideに説明がある。しかし、実際には特に説明のないstartup_*.exeが2個ある。

  • startup_rebaseall.exe
  • startup_template.exe

この2個のファイルはファイル名が違うだけで同じファイルである。

image

 

startup_config.ini と startup_template.exeの関係

startup_*.exeについては、本家のksugitaさんのブログに解説があった。

[gnupack] gnupack 12.01-2015.01.11 リリース - startupプログラムの分離
http://d.hatena.ne.jp/ksugita0510/20150111/p1

gnupackのフォルダパスが変わった場合,startupプログラムのショートカットを合わせて修正する必要があります.バージョンアップを行う場合,この手間が煩わしいと思うのではないでしょうか.

これらの手間は,startupプログラムとgnupack本体を分離することで,少なくすることができます.
(…以下省略…)

startup_config.ini の中に下記の記述を見つけた。

gnupackのフォルダパスが変わった場合,startupプログラムのショートカットを合わせて修正する必要があります.バージョンアップを行う場合,この手間が煩わしいと思うのではないでしょうか.

これらの手間は,startupプログラムとgnupack本体を分離することで,少なくすることができます.

[startup_rebaseall.exe]
   Cmdline_Image        = "%dash.exe%" -c 'x=`rebaseall -v`; echo $x|grep -v -E "\S+: new base"; printf "\nPlease Enter: "; read x'

どうやら、startup_template.exeはstartup_config.iniの中にある実行ファイル名と同じセクションを探して実行時のパラメータとするらしい。

startup_rebaseall.exeでやっていること

startup_config.iniの[startup_rebaseall.exe]にあるCmdline_Imageの中を見ると、次のことを実行してることがわかる。

  1. dash.exe で rebaseall ?v を実行し、出力結果を x に保存する
    # rebaseall は bashから実行できない。ash または dashから起動する必要がある。
    # rebaseall ?v とすると、実行状況が詳細に表示される。
  2. grep.exe でx から’ :newbase’ を含まない行を表示する
    # 結果的にエラー行を表示する。
  3. “Please Enter:”を表示する
  4. read x でEnterキーが押されるまで停止する

まとめると、rebaseallを実行して、エラーがあったら表示するということをやっている。

starup_rebaseall.exeを実行してみた

実際にWindowsエクスプローラからstartup_rebaseall.exeを実行してみた。

image

2個のエラーが表示されているが、実際には正常に実行できている。

それぞれのエラーの意味と解決方法は既に本ブログの下記の記事で説明している。

      0 [main] dash 4684 fstab_read_flags: invalid fstab option - 'ntfs'

gnupack12: ashまたはdashで fstab のエラーが表示される

/usr/lib/perl5/5.14/i686-cygwin-threads-64int/CORE/cygperl5_14_2.dll: skipped because nonexistent.

gnupack12: rebaseall でPerlのDLLでエラーになる

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(1件)

タイトル (本文) ブログ名/日時
gnupack 13 リリースなのでgnupack12のまとめ
gnupack13リリースについて 4月30日にCygwin 2.0.1がリリースされ、5月2日にはそれを反映したgnupack 13がリリースされました。 ※ksugitaさん、ありがとうございます。お疲れ様でした(^_^) 今後、「gnupack13以降」タグを追加して投稿していく予定です。 また、混乱を避けるために「gnupack12以降」タグのついている記事で、gnupack13で解決しているものは、その旨を追記していくつもりです。 gnup... ...続きを見る
ハードなソフトの話
2015/05/07 23:31

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
gnupack12: startup_rebaseall.exeってなんだろう? ハードなソフトの話/BIGLOBEウェブリブログ
文字サイズ:       閉じる