nDiki : 2005年03月08日
2005年3月8日 (火)
■ HDDが飛びました。しかも2基?

朝会社につくと慌しい雰囲気。
スタッフのPCが起動しなくなったらしい。
久しぶりにきくHDDの軽やかなコロコロ音。死んだな。
2台ささっていたHDDを別のPCにさしてデータの復旧を試みていたようだが、両方とも駄目らしい。 CD-ROM ドライブも異音をたてるようになっている。
彼女が帰ってから次の日出社するまでに、いったい何があったのか。
- 納品前日なのに /var が壊れた! HDDからのブートで Debian ... (2005-09-27)
- ゴールデンウィークで混み混みの秋葉原 (2006-05-03)
- 自宅の無線 LAN を復旧 & IEEE 802.11g 化 (2004-11-26)
- ThinkPad X31 2672-BJ9 (2003-11-30)
- PORTEGE300CT のバックアップ (2003-08-31)
■ 昨晩は今年最高の夜でした

って辛さが。
(天気予報で「今年一番の〜」とかしょっちゅう言うのがちょっと嫌。)
今日からがスギ花粉の飛散ピークらしいが、既に昨日からかなりきてる。 特に夜がつらい。鼻の通りが悪いわ、喉は痛くなるわ、寝付きが悪くて仕事の妄想が頭に浮かんで離れないわで。
@ 悪寒
今日は4月並の暖かさになるはずなのに、オフィスがえらい寒い。 いやな感じ。
もしや。
帰って計ったらまた熱出てた。 ガクリ。
- 京浜東北線が止まって迂回 [日比谷線-埼京線-りんかい線] (2007-03-05)
- 今年の花粉は楽だった (2008-05-03)
- やっぱり花粉もう飛んでいる? [ 花粉症 ] (2005-01-07)
- 今日のさえずり - 子供がブランコから抜けなくなってる (2008-03-31)
- クラリチン60錠。超立体マスクも入手。 (2005-04-01)
■ 総コレステロールとGPTでC判定

去年はオールA(異常なし)だったのだが、今回はC判定(要観察)が2つついた。
前者は最近また太ったとか、油っこい弁当を食べたりとか心当りあり。 後者についてはGOTはいちおう基準値内でGPTの方が高くなっているから過栄養性脂肪肝傾向ということ?
どちらにせよ生活改善が必要。
- 健康診断の結果は高脂血症 (2006-03-09)
- 生化学検査異常なし (2005-06-15)
- 16:00 健康診断 (2006-02-27)
- Give me chopsticks - 淡路島へ出張 (復路) (2004-10-26)
- 今日のさえずえり - スパイだからミハルだってようやく気がついた (2008-11-28)
■ 「依存関係検査のしにくいモジュール」に依存するスクリプトをPARで実行形式化する

PAR を使うとPerlスクリプトを単独の実行可能形式ファイルに変換することができる。 この際、自動的に依存するモジュールも探し出して追加してくれるのだが、eval の中で use するものや lib 以下に配置された通常のファイル等は自分で追加する必要がある (pp の -a, -A, -M オプション等で)。
開発しているモジュールに含まれるスクリプトをexe化するルールは、Makefile.PL でいろいろ処理をしてこれらを指定するようにしておけば比較的簡単にビルドできる。
しかしそれが今開発対象となっているモジュール/スクリプトではなく、その依存モジュールがそのようになっていると面倒くさい。 ということで依存モジュール側で必要なモジュール・ファイル一式を PAR ファイル化し、それを作業中のモジュール/スクリプトで取り込むようにしてみた。
PAR の pp コマンドは(1つのPAR ファイルから実行形式ファイルを作る時以外)直接 par ファイルを取り込む事ができないようなので、展開してあらためて追加する必要があるのでちょっと面倒。
@ 依存モジュールをまとめた par を作る
例えばそのモジュールに myscript.pl が含まれており、これをexe化するにはいくつか手動で追加するファイルを指定する必要があるとする。
またそれらのファイルは、現在作ろうとしているスクリプトをexe化する際にも必要だとする。
pp -p -o all.par \
-I blib/lib -I blib/arch \
-A ... \
-M ... \
blib/script/myscript.pl
myscript.pl に必要なモジュールを含んだ PAR ファイル all.par ができる。
ちなみに parl -p でもモジュールからPAR ファイル化でき blib 以下をごっそりアーカイブできるのだが、そのモジュールが依存しているモジュールを含ませることができないので、今回の用途には×。
@ PAR ファイルを展開する
all.par を展開する。 ここでは c:\tmp\all 以下に展開するものとする。
@ 作成したいスクリプトのPAR ファイルをいったん作る
スクリプトのあるモジュールのディレクトリに移動し、make。 その後
pp -p -o newscript.par \
-I blib/lib -I blib/arch -I c:\tmp\all\lib \
-a c:\tmp\all\lib;lib \
blib/script/newscript.pl
newscript.par が出来上がる。この中には -a オプションの指定と、newscript.pl の依存関係検査による抽出で c:\tmp\all\lib 以下のファイルが2回含まれているものがある(大抵)。 無駄なので除去する。
(面倒ならば重複するファイルを含んだままではあるが、ここで -p オプションを指定しないで直接 exe を作る事も可能である)
@ 除去するスクリプト(例)
#!/usr/bin/perl -w
use strict;
use Archive::Zip qw(:ERROR_CODES);
my $zip_name = shift || die 'must provide a zip name';
my $zip = Archive::Zip->new;
$zip->read($zip_name) == AZ_OK || die "Can't read $zip_name:\n";
my %names;
for my $member ($zip->members) {
my $file_name = $member->fileName;
if (exists $names{$file_name}) {
print "Remove $file_name ...";
if (defined $zip->removeMember($member)) {
print "OK.\n";
}
else {
print "NG.\n";
}
}
$names{$file_name}++;
}
exit($zip->overwrite);
@ PAR ファイルを実行可能形式ファイルに変換する
pp -o newscript.exe newscript.par
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- [ Perl ] PDL::PP で C extension を書く (2004-02-19)
- Module::Build でソースパッケージング (2005-08-24)
- EPIC (2003-12-02)
- PAR (2004-07-19)
スポンサード リンク
■よく検索されるキーワード
torrent(109) x31(45) thinkpad(31) 動画(29) 提案書(26) mp980(24) 手帳(24) windows(23) linux(23) 画像(21) 使い方(21) リフィル(21) debian(20) usb(20) tc-1(19) perl(19) 筆まめ(18) 壁紙(17) ほぼ日手帳(16) 冷蔵庫(14) ドラマ(13) wiki(13) 書き方(12) ダイソー(12) システム手帳(12) 宮根誠司(12) ノート(11) so905ics(11) 無印(11) バッグインバッグ(11) 映画(11) 設定(10) 修理(10) 宮根(9) ssh(9) a6(9) ほぼ日(9) 黒田征太郎(9) バッグ(9) gmail(8) 感想(8) 娘(8) f-01a(8) メモリ(8) gtd(8) ブログ(8) nikon(8) allinanchor:*.torrent(8) ボールペン(7) 方眼(7) ポイント(7) 4c(7) ヨドバシカメラ(7) ケース(7) twitter(7) apache(7) ht-01a(7) ヨドバシ(7) ubuntu(7) truecrypt(7) n-02a(7) 作り方(7) minolta(7) af(6) インストール(6) ガントチャート(6) mp3(6) zippo(6) hdd(6) emacs(6) レビュー(6) カバー(6) vq1005(6) 日本語(6) ハクキンカイロ(6) 無印良品(6) グレゴリー(6) 交換(6) nikkor(6) pixus(6)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.034911s / load averages: 0.53, 0.29, 0.21
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク