トップ «前の日(02-14) 最新 次の日(02-16)» 追記

ヨタの日々

2001|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|12|
2024|01|02|03|04|05|06|07|08|09|10|11|12|
2025|01|02|03|04|05|06|07|08|09|10|11|12|

2002-02-15

_ 場所

神奈川



_

今日は僕、たくみ、いのうえざん。たくみがいのうえさんに渡すものがあるということなのだけど、なぜか僕も召喚されました。いや明白なんだけど。


昨日は目当ての人が居ませんでしたが、今日は居ました。Final Fantasy の勝利のポーズ並に喜ばしいですなへっへ。


さて明日も仕事があるのですでに頭痛がしつつ寝ます。


2003-02-15

_ 季まぐれ格言

更新。最近はDoCoMo 社員ネタばかりでみんな亜季ちゃったかな。

_ いつも「 時間が足りない 」と嘆くあなたに捧げる処方箋

しるちゃんのところより。

タイムリー1。そいや、うちのボスはしきりに「 まずは日程表作れ 」と言ってくる。自分が抱えているタスクを洗い出すためにやってるんだよな。

与えられた仕事をやみくもにこなすだけという状況から脱しないと
自分の能力を伸ばす意欲がわかず,単に疲弊していくばかりである。         

_ マリちゃん@サタデー HOT リクエスト

* 前

仕事を昼に抜け出そうとしたら 1130 ころに虫発見。えぃゃっと直して渋谷へごー。

メイト渋谷にてマリちゃん CD 購入。真綾な gravity 予約。

1330 ころ NHK のスタジオ前あたりに到着。佐伯くん、上山さんと合流。整列。佐伯くん 2 番。ヲレ 40 番。上山さん 100 番台。

1445 くらいにスタジオ入場。最前列のほうが空いてたから行ってみたら佐伯くんが最前列の左隅に居た。その隣をげと。だらだら

マリちゃんを見たらとっとと仕事に戻ろうと思ってたのだけど、マリちゃんの出番が 1630 ころだと。でも普通に番組を楽しんだ。なかなかおもろい。ていうか隣の少女、手紙書いたりガサガサしたりうるさいです。

ジニーとかいう娘( not 娘。)。けっこう美人すね。

* さたほと

はるか昔にふいに来たときはミニライブやってくれたです。アルバム「そら」が発売されたあたり( トマトが入ってるアルバムは「そら」だっけ? )。らむさんと一緒にハァハァしますた。でも今回は CD をかけるだけらしい。ち。

内容は省略。今回のアルバム作成時の話しとかいろいろ。

マリちゃん見たのでさくっと帰社。さて仕事。

_ diff

Microsoft WindowsXP には UNIX 系統と同様に diff コマンドがあるのか。いいね。Windows2000 にはあるのかな。

_ アンテナ

。「 ぢゃ 」なのくあ。ところで title タグに書いてあるほうに変更しちまいました。

_ メールアドレス

ふむ。BIGLOBE のメールアドレスには SPAM だけが来るようになった :D 。

_ 軽率

2/16 にゆかたんたちが参加するライブがある。ヲレは忙殺されていたのですっかり行かない方向に決めていた。

昨日マリちゃに萌えてから帰社してからの仕事ちうに某荒川さんから「 明日のチケットはたくみから言われたので確保しときました。よろしく 」というメールが飛んでできた。

はて。頼んだっけ? でもたくみさまから「 頼んだだろうがスカタン。IRC ログ見れ 」と言われて思い出した。そいや「 チケットおねげーします 」と言った記憶がある。

ああしまった。すっかり忘れていた。がんばって行くか。

ぃゃ「 仕方無いから行く 」という語彙ではないので誤解しないでね。仕事から逃げる口実です ... 。


2004-02-15

_ 仕事

0700 出勤。

_

気温がちと高いか。自転車通勤したら汗がにじんだ。

_ サブタイトル

サブタイトルが「むぅ」になってるのがやたらと多いオイラの日記。

_ 仕事

0800 有楽町へ。

_ しまった

日比谷で目が覚めたのはいいが途端にドアが閉まった。惜しい。ひと駅乗り過ごし。

_ さらに

出口を間違えて日比谷駅地下をさまよう。

_ 仕事

1830 現場作業終了。

_ しまった(2)

新丸子で下車しようとしたら気付いたら元住吉だった。

_ 仕事

1930 帰社。

_ Tour de Japon プロモ

「ファイルを再生できません」と言われた会社の計算機。

_ 仕事

2250 退勤。

_ 帰路

風が強いっすよ。そりゃもう向かい風を受けてるような風の強さ。耳痛いし。

_ 鳥よ鳥よ鳥たちよ〜♪

ふと思いついた。

rin@sakura[~]% which 幸せ
幸せ not found

_ もういっちょ

見つけた幸せは偽りの幸せだった。

rin@sakura[~]% which happy
/bin/happy
rin@sakura[~]% ls -l `which happy`
lrwxrwxrwx   1 root     root           10  2月 16日  01:01 /bin/happy -> /bin/false*

2005-02-15

_

0530 起床。

新丸子のほうまで往復。

昨日は明るかったはずなのだけど今日は暗かったと思ったら曇ってた。

あと気温がちょいと高い。

_ 屁こきましたねあなた

しかし通勤中の南武線車内でのことなのでダレとは特定できない。

よって「 屁こきましたねどなた 」といったところか。

_ 仕事

0830 府中。

1715 退勤。

装置の実物を見せてもらった。はぁはぁ。

_ でりばり

弊社の交通費清算書なんぞを勤務先で書いたのはいいけど当面弊社に行く用事がないのでいつ弊社に提出しようかと考えていたら中島支障( 仮名 )が打ち合わせのために弊社からこちらに来ていたのでコーヒーを飲みつつデリバリをお願いした。

中「 13:00 になったけど仕事戻らなくていいの?( ずずー ) 」

ヲ「 H さんを捕まえないと先に進まないんだけど、そもそも H さんがなかなか捕まらないんだよね( ずずー ) 」

中「 あのひとはなかなか捕まらないからねえ。待て待てー って追っかけるんでしょ。浜辺で( ずずー ) 」

ヲ「 待てよぅー あははー みたいな。やらねーって( ずずー ) 」

などとヨタヨタ。

_ 今日のグラディウス 5

ステージ 6 のボス。BGM が「 stage boss 」になったのでアレを倒せばステージ 6 クリアだったのだろうけど、やられた。

ステージ 4 でクレジット 2 回使ったのがダメだなあ。


2006-02-15 :-)

_

0800 起床。

ぐでー

_ 医者はどこだ

胃痛部の部活動。

医者に行ってきた。

以下医者との会話のまとめ。

  • 胃に異常なし
    • 胃炎とか胃潰瘍ではない
  • i386 や 586 のころは計算機が高価だった
  • 1995 ころはインターネットなんて「 ピーガー 」といいながらやっていた
  • やっぱり DELL

私はそのころの話題はついていけません笑

_ おやつ

まめや 冨貴豆。

p2150001.jpg

_ ふうむ

2,3 日 web 巡回しなかったら はてなアンテナだけでタブがこんなになってしまう。

どう見ても多すぎです、謝謝。

h00.png

_ joel on software

ちまちまと読み進めてます。

休憩中に読んでいたらソフトウェア開発について担当の Kb さんと会話が発展した。

Kb さん「 なに読んでるの 」

ヲレ「 joel on software という本っす。ちょっとしか読んでないのだけど、Microsoft Excel の開発に携わったひとが書いてるらしいっす 」

Kb さん「 難しいのか? 」

ヲレ「 ぃゃそうでもないですよ。文章に登場する単語はそれなりに知ってないと楽しめないけど( C の文字列の NULL 終端は邪道とか C++ の string クラスとか ) 文章自体は噛み砕いてるというか砕けた文章なので笑えます。面白いエピソードとかあるし。WindowsNT 1.0 と MSN が失敗したプロジェクトだそうです笑 」

Kb さん「 Windows なんかだと何人くらいで開発するんだろね 」

ヲレ「 何千人ものひとが関わってるらしいっすよ 」

Kb さん「 すげえな、やっぱコミュニケーションはピラミッド型になるんだろか 」

ヲレ「 どうすかね、さすがにそんな経験はないけど、そのくらいの規模になったらピラミッド型のほうがいいのかな 」

Kb さん「 人数が増えたらそれだけコミュニケーションの負荷が大きくなるんだろう。あっちを直したらこっちが不具合になったとか 」

ヲレ「 あはは。管理が大変ですよね。多発するセキュリティホールなんてのもそーいうコミュニケーションによる不具合だったりして 」

Kb さん「 OS なんてひとりじゃ作れないのかな 」

ヲレ「 そうでもないみたいっす。近日 30 日で作れる OS 入門とかそーいう本が出るのだけど、やっぱりこれもひとりで OS を書くという前提みたいっす。機能はだいぶ限定しているみたいだから、それで OS を肥大化しないようにしてるのかな 」

Kb さん「 なるほど、OS として最低限の機能ならばそれほど大きくならないわけか。そういえばアノ装置の OS は弊社から依頼してよくソフトを作ってもらってるひとが 1 人で書いたみたいだぞ 」

ヲレ「 まじっすか。ぃゃまあひとりで書けるのかもしれないな。Linux も最初は Linus ひとりで書いたんだし 」

世の中すごいひとばかり。

とんがれプログラマ。

ref.

4274066304

わずか数十人で作ったWindows95をリリースすることでさえあれほど大変だったことを考えれば、何千人が関わっているWindows Vistaをリリースすることがいかに大変かは想像を絶する。


2007-02-15 :-|

_ [運動]運動る

雲に隠れた朝日

img_3031.jpg

_ デブサミ 2007

すんません、体調崩して不参加です。

  1. ノドの痛み
  2. 頭痛
  3. だるだる

の 3 連携により家でぐったりします。

_ [おひる][スパゲティ]おひる

ツナのカレークリームスパゲティ。

img_3033.jpg

_ 今日は寝る曜日

ひたすら寝ます。

飽きるくらい寝ます。

FF12 をプレイしたい衝動に駆られたけど寝ます。

_ [Scheme]買い物

amazon

0262560992

本日のツッコミ(全2件) [ツッコミを入れる]

_ もと [ゆっくり休んでしっかり治してください。 おいらも含めて、周りでこじらせている人多い気がします。]

_ みわ [もとさん ぐったり休みました。うう。のどいて]


2008-02-15 :-)

_ 朝ったー

0540 起床。ねむ。

_ [ファイナルファンタジー I・II][植松伸夫]通勤ったー

ファイナルファンタジー I・II全曲集

今日から 3 週間くらいファイナルファンタジーシリーズ( 以降 FF )の作品が続きます。FF1, 2 は各々 1 回ずつプレイしました。作曲は植松伸夫さん。CD 1 枚に FF1 と FF2 の曲が収録されてます。CD の最初と最後にアレンジ曲があります。最近の FF は 1 ゲームで 100 曲近くあるのが当たり前になっていますが、このころは曲数が少なかったです。FF1 は 20 曲。FF2 は 27 曲です。FF1 から FF12 までの曲数は以前まとめました[ 20070302#p04 ]。

FF1。使用している音が少ないのでメロディが分かりやすいです。世間では「マトーヤの洞窟」が人気があるようですが( 観測範囲が狭いですが )私は「街」「店」「船」など素朴な曲のほうが好みです。

FF2。ゲームの開始直後にパーティが全滅します。なので「プレリュード」の次に「戦闘シーン」が収録されています。「メインテーマ」はフィールド曲なのですが、暗いです。作品全体に漂う悲壮感を表しています。「チョコボのテーマ」は今では FF の伝統的キャラクターになったチョコボの曲です。チョコボは FF2 で初登場しました。「ファンファーレ」は FF5 「ファンファーレ1」と同じ曲です。「戦闘シーン2」はボス戦の曲です。植松さんの「裏切るような曲」[ 20071020#p01 ]が発揮されています。tr45「店」以降はゲーム未収録の曲です。tr48「ダンジョン」は後に FF6「からくり屋敷」として使われます。

B00005FO1L

_ 仕事

0830 出勤。

_ 仕事場のレイアウト

上司から「事業所のフロアレイアウトの草稿を描いてみないかい」ということでチラチラ描いてみました。ISMS 的な機密保護レベルくらいは考慮しました。あと消防関連で部屋に要求される事項がありそうなんだけどさっぱり分かりません。むしろ素人にやらせるよりも外部業者に金払って設計してもらったほうがいろいろな意味で良いんじゃないでしょうか、と上司にはツッコミしておきました。

_ 仕事場の席にチョコレートが置いてあった

一緒に「【品質】設計者の心得」というメッセージカードも置いてありました。「チョコレートやるから会社にちゃんと貢献しろよ」という飴とムチなメッセージかもしれませんね。

_ デブサミに行って気づいたこと

  • 最初から最後まで居ることが体力的につらい
  • 会場近辺に喫茶店が無い
    • ホテル内の喫茶店のコーヒーは高い( 1 杯 900 円なんて生活は私には出来ない )
    • なのでちょいと移動してベローチェでコーヒー飲んで読書したり
  • 会場の最前列は空いている
    • たまにプレゼン資料の字が小さいひとが居るので最前列のほうがいい
    • 講演者のしぐさも見れるし
  • プレゼン資料
    • 背景色は黒、文字色は白が見やすい
    • 背景色をグラデーションしておくとかっこいい
  • 「ソフトウェア開発と関係無いんじゃないか?」という講演も聴くといい
    • 新しいことが分かるので楽しい
    • 全然違う業界の話を聴ける
    • 違う業界と自分の業界の共通点を発見したりして楽しい
  • 1 セッション空けておくと時間が余る
    • あまのりょーさんから「30分くらい時間を潰すならブースに居るひとと会話して時間を潰せばいいよ」と助言を頂いた
    • なっ ブースに居るひとに話しかけるんですかっ そんな恐れ多い おう え あうあ
    • という恐怖感
  • ブースはまったく行かなかった
    • 翔泳社は joel 本があるから行ったけど

_ [Emacs][Mac OS X][akio0911]皆さん、Terminal内でEmacsやVimを使ってますか? - Web2.0職人への軌跡

( akio0911 さんとこ )

コメントを書こうとしたけどやめました。考えてみたら私が Mac mini で Mac OS X を使ってたころは以下のような状況でした。たぶん

  • Emacs current を使ってた
  • vim は使ってない
  • Terminal 内で使ったかどうかあまり覚えてない
  • 日本語は問題なく使えてた気がする

幼いころから「Emacs は current を使うもんだ」と啓蒙されて育ったので Carbon Emacs を使ったことが無く、上記のように記憶が曖昧だし現在だといろいろな状況が異なるかもしれないし結局助言にならないのでここでボソボソしておくことにします。

_ ここギコ!: KDDIのせいでWiki=Wikipediaが定着の恐れ

( via たしか tsupo さんのブックマーク )

奇遇ですね。

うちにも wiki があります。

_ [joel]joel が言っていた「美学」

  • 無駄な機能を削ぎ落とす
  • 必要最小限の機能
  • 洗練させる

joel は Apple iPhone と Samsung BlackJack を比較していました。

  • iPhone
    • 機能を絞る
    • やれることを絞る
    • 無駄が無くなる
    • インターフェースを減らす
  • BlaskJack
    • 多機能
    • なんでもやれる
    • インターフェースが多い

joel が言っていたのはたんに華やかという意味ではなくて、単純な機能を実現したので見た目がこうなりました、という意味の美しさだと解釈したけど違うのかしら。Macbook Air を見たときに同じような印象を持ちました。ちなみに Macbook Air 実機を使ったことはないので妄想です。

建築に無駄な装飾をとりのぞくモダンアーキテクチャという流派があるが、ソフトウェアはまだその段階に達していない。ユーザーは装飾を好む。ウィンドウのありえないところに影があったり、金属でもないのに金属の見た目だったり。

そうか。モダンの話題がありました。装飾の話題がありましたね。

_ [tdiary][trunk][current] tdiary current を追いかける

しばたさんから「 trunk にしちゃいなよ」とツッコミを頂いたので tdiary を trunk にしました。current? trunk?

作業ディレクトリは $HOME/usr/local/tdiary-cur です。このディレクトリに以下のような trac.sh を用意します。tracking の trac です。contrib は tdiary-contrib と CodeRepos にありますが tdiary-contrib から取得だけしておきます。でも cp しないことにします。setup, teardown の関数名は RSpec を真似しました。public_html 以下にファイルを cp するので最初に apache を stop しておきます。最後に apache を start します。「それ 1 行で書けるよ」といった処理があればツッコミをお願いします。

#!/bin/sh

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/pkg/bin

setup()
{
  pserver=:pserver:anonymous@tdiary.cvs.sourceforge.net:/cvsroot/tdiary
  modules="core plugin contrib"
  workdir=$(pwd)
  tdiarydir=${HOME}/public_html/tdiary
  sudo /etc/rc.d/apache stop
}

teardown()
{
  sudo /etc/rc.d/apache start
}


main()
{
  local op=$1
  cvs -d"${pserver}" login

  case $op in
  checkout)
  for mod in $modules; do
    cvs -z3 -d"${pserver}" co -P $mod
  done
  ;;

  update)
  for mod in $modules; do
    pushd .
    cd ./$mod
    cvs up
    popd
  done
  ;;
  esac

  cd "${workdir}"/core
  cp -R * "${tdiarydir}"
  cd "${workdir}"/plugin
  cp -R * "${tdiarydir}"/misc/plugin

}

setup
main $@
teardown

こんなふうに実行。

% cd ~/usr/local/tdiary-cur
% ./trac.sh checkout

cvs up は動作確認してないです。

ref.

_ 買い物

amazon

kuro から「やっとけ」と言われました。

B000CSJ13W

_ 買い物

amazon

@lynmock への小遣いをあげるために買ってみました( ref. P3:PeraPeraPrv - とかいろいろ )

( via ただのにっき )

B000YIRSGM

( via [mixi] トヨタ生産方式 )

4828413995

( 誰かが Twitter で「いい!」と言っていた )

B000NVL0T6

( MAD を見て釣られた )

B000SKNOF0

_ [おやつ][宮崎銘菓チーズ饅頭]おやつ

宮崎銘菓チーズ饅頭

_ [4行日記]4行日記

  • 【事実】tdiary current にした。作業したのは昨晩。でも今日の日記に書いた。
  • 【気づき】自分がツッコミしようとしたら設定しておいたspam判定により自分のツッコミがspam判定されてしまった。なんてこった。ツッコミ本文に「@」を含めたため。ツッコミ注意文にspam判定基準を書いておいた。ツッコミするときは注意してね。
  • 【教訓】current は怖くない。
  • 【宣言】バグレポートを書く

その前にバグを発見する必要があるわけですが。


2009-02-15 :-)

_ 朝ッ

1000 起床

_ 次のレッスンの CD をエンコードしようとした

久しぶりに丸数字を見て感動した。

_ チャリった

等々力緑地付近に梅が咲いていた

_ [リッジレーサー7]リッジレーサー7

メーカー主催のレースを消化。

  • 走行距離 5480.580km
  • RSGP 進行度 96.9%
  • 名声 17092FP

_ [おひる][きのこのクリームソーススパゲティ]おひる

きのこのクリームソーススパゲティ。

_ [][鶏の唐揚げ]飯

鶏の唐揚げ( ref. ウマすぎるから揚げの作り方 )。唐揚げは初めて作ったんだがうまくできた。こんなに柔らかくなるんだなあ。

_ [おやつ][クラシックショコラ]おやつ

クラシックショコラ( ref. ちゃんと作れるスイーツ pp.26-27 )。自分宛ての逆チョコ(笑)。loopback チョコ。


2010-02-15 :-|

_ 朝ッ

0530 起床

_ 仕事

0830 出勤

_ 最近なぜ自転車に乗っていないのかが分かった

自転車に乗らないからだ。

_ PSフレンドのひとが「 Modern Warfare 2 をプレイしている」と話題にしたので動画を探してみた

最初にたどり着いたのがこれだった。閲覧注意。ゲーム脳については否定するけど、さすがにこれは私自身に耐性が無いので自分でもプレイしたくないし、子供が出来たとして子供にもプレイさせたくないなあ...。

_ 気づいたらチームANSで最長老だった

ただいま 32 歳

チームメンバーの高校受験(!) という話題を見て驚愕することもあった。年齢が 2 倍以上離れてるし。おそろしい。私がその年齢だったころはなあ(中略) FF5 とかロマサガをプレイしていた。FF5 は高校受験が終わるまで我慢したものさ。すぐクリアしたけど。神竜は強かった

チームANS じゃないけど Papo さんがかろうじて年が近い( それでも年下 )。HIKKORO さんは年上かなあ。JE4URN さんは年上。

_ [リッジレーサー7]リッジレーサー7オンラインバトルでの開幕スタートが難しいコース

「難しい」というのは下手すればニトロが 1 本も溜まらないので「誰か後ろから押してー」状態になること。ただし HIJACK は除く。まあ「開幕スタートとはどこなのか」という定義しないといけないんだけど。

コースムズイ?
Seaside Route765
Seaside Route765 R
Rave City Riverfront
Rave City Riverfront R
Industrial Drive
Industrial Drive R
Lost Ruins
Lost Ruins R
Harborline 765
Harborline 765 R
Old Central
Old Central R
Highland Cliffs
Highland Cliffs R
Seacrest District
Seacrest District R
Mist Falls
Mist Falls R
Midtown Parkway
Midtown Parkway R
Aviator Loop
Aviator Loop R
Shadow Caves
Shadow Caves R
Laketop Parkway
Laketop Parkway R
Surfside Resort
Surfside Resort R
Lakeshore Drive
Lakeshore Drive R
Southbay Docks
Southbay Docks R
Island Circle
Island Circle R
Bayside Freeway
Bayside Freeway R
Airport Lap
Airport Lap R
Downtown Rave City
Downtown Rave City R
Sunset Heights
Sunset Heights R
Crossbay Tunnel
Crossbay Tunnel R

_ [リッジレーサー7]リッジレーサー7

オンラインバトルなど。megu さんとか速すぎる。勝てない...

  • 走行距離 65068 km
  • RSGP 進行度 100.0 %
  • 名声 21927 FP
  • オンラインバトル勝利数 525/2080
本日のツッコミ(全5件) [ツッコミを入れる]

_ Fryght [因幡さんが「みけねこ氏はゾルギアで開幕対策をする」なんて事言ってたような・・。 考えれば確かに決まる確率は上がる。]

_ みわ [おお。ゾルギア! 今度試してみます。]

_ さいき [>最近自転車に乗らない理由 自転車が壊れたからwww]

_ けやき [ローリングサンダーダイナミック車に履かせると加速UPしますのよ]

_ みわ [ローリングサンダー+3 加速すごいっす]


2011-02-15 :-(

_

0500 起床

0600 雪積もってるので徒歩

0830 出勤 || 隣の隣のひとの声がシナダ・ベニオ ( シナダ・ベニオ/スカーレットキス )のような感じである。

0930 シミュレーション

_ 午後

1500 実機

_

1700 残業アワー

2030 退勤

2200 飯。ブリの照り焼き

2230 粗大ごみ片付け


2012-02-15 :-(

_ 午前

0520 起床

0830 出勤

0900 テスト準備

_ 午後

1300 テスト準備

1500 外出

1530 自社 || 打ち合わせ

1700 退勤

_

1900 rubyほげ

2030 飯

2230 rubyほげ

_ cygwin が死んだ

たぶん rebaseall すればいいんだけど

% bundle exec rake spec
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
/usr/local/bin/ruby.exe -S rspec spec/acceptance/append_comment_spec.rb spec/acceptance/append_diary_spec.rb spec/acceptance/bugfix/encoding_error_spec.rb                        spec/acceptance/save_conf_comment_spec.rb spec/acceptance/save_conf_default_spec.rb spec/acceptance/save_conf_dnsbl_spec.rb spec/acceptance/save_conf_fil                       ter_spec.rb spec/acceptance/save_conf_plugin_spec.rb spec/acceptance/save_conf_referer_spec.rb spec/acceptance/save_conf_security_spec.rb spec/acceptance/                       update_diary_spec.rb spec/acceptance/view_category_spec.rb spec/acceptance/view_comment_spec.rb spec/acceptance/view_diary_spec.rb spec/acceptance/view_re                       ferer_spec.rb spec/core/compatible_spec.rb spec/core/core_ext_spec.rb spec/core/style/emptdiary_style_spec.rb spec/core/style/etdiary_style_spec.rb spec/c                       ore/style/rd_style_spec.rb spec/core/style/tdiary_style_spec.rb spec/core/style/wiki_style_spec.rb spec/plugin/bq_spec.rb
      0 [main] ruby 5544 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
      0 [main] ruby 5924 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
      1 [main] ruby 2288 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
      1 [main] ruby 3412 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
      1 [main] ruby 2140 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
      0 [main] ruby 5308 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.

返ってこない

_ [ruby][bundle]bundle install --path ~/.bundle するといろいろ怒られる

% uname -a
NetBSD mogu.area51.gr.jp 5.99.58 NetBSD 5.99.58 (MYKERNEL) #0: Mon Dec 26 21:16:57 JST 2011  root@mogu.area51.gr.jp:/usr/obj/sys/arch/i386/compile/MYKERNEL i386
% ruby --version
ruby 1.9.2p180 (2011-02-18 revision 30909) [i386-netbsdelf]
% gem --version
1.3.7
% bundle install --path ~/.bundle
Fetching source index for http://rubygems.org/
Using rake (0.9.2.2)
Using addressable (2.2.6)
Using highline (1.6.11)
Using net-ssh (2.3.0)
Using net-scp (1.0.4)
Using net-sftp (2.0.5)
Using net-ssh-gateway (1.1.0)
Using capistrano (2.9.0)
Using capistrano_colors (0.5.5)
Using mime-types (1.17.2)
Using nokogiri (1.5.0)
Using rack (1.4.1)
Using rack-test (0.6.1)
Using ffi (1.0.11)
Using childprocess (0.3.0)
Using multi_json (1.0.4)
Using rubyzip (0.9.5)
Using selenium-webdriver (2.17.0)
Using xpath (0.1.4)
Using capybara (1.1.2)
Using net-http-digest_auth (1.2)
Using net-http-persistent (1.9)
Using webrobots (0.0.13)
Using mechanize (2.0.1)
Using capybara-mechanize (0.3.0.rc3)
Using coffee-script-source (1.2.0)
Using execjs (1.3.0)
Using coffee-script (2.2.0)
Using daemons (1.1.6)
Using diff-lcs (1.1.3)
Installing eventmachine (0.12.10) with native extensions /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:496:in `rescue in block in build_extensions': E
RROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

/usr/pkg/bin/ruby19 extconf.rb
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... yes
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... yes
checking for rb_thread_check_ints()... yes
checking for rb_time_new()... yes
checking for sys/event.h... yes
checking for sys/queue.h... yes
checking for main() in -lssl... yes
checking for main() in -lcrypto... yes
checking for openssl/ssl.h... yes
checking for openssl/err.h... yes
creating Makefile

make
c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -obinder.o -c binder.cpp
c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -ocmain.o -c cmain.cpp
c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -ocplusplus.o -c cplusplus.cpp
c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oed.o -c ed.cpp
c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oem.o -c em.cpp
em.cpp: In member function 'void EventMachine_t::_ReadLoopBreaker()':
em.cpp:924: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'bool EventMachine_t::_RunTimers()':
em.cpp:948: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToServer(const char*, int, const char*, int)':
em.cpp:1089: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToUnixServer(const char*)':
em.cpp:1218: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1221: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1237: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1243: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1249: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'int EventMachine_t::DetachFD(EventableDescriptor*)':
em.cpp:1350: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateTcpServer(const char*, int)':
em.cpp:1453: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1455: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1535: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::OpenDatagramSocket(const char*, int)':
em.cpp:1545: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1596: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'void EventMachine_t::ArmKqueueWriter(EventableDescriptor*)':
em.cpp:1625: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'void EventMachine_t::ArmKqueueReader(EventableDescriptor*)':
em.cpp:1647: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::_OpenFileForWriting(const char*)':
em.cpp:1773: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateUnixDomainServer(const char*)':
em.cpp:1805: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1866: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::Socketpair(char* const*)':
em.cpp:1927: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1932: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1934: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1938: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1948: warning: converting to non-pointer type 'long unsigned int' from NULL
*** Error code 1

Stop.
make: stopped in /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10/ext


Gem files will remain installed in /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10 for inspection.
Results logged to /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10/ext/gem_make.out

? ('A`)

ググる

#79: invalid conversion from 'EventableDescriptor*' to '__intptr_t' - Issues - eventmachine/eventmachine - GitHub

pkgsrc にある....だと...?

% cd /usr/pkgsrc/devel/ruby-eventmachine/
% sudo make install clean clean-depends

まだ同じだった

一度アンインストール

% sudo gem uninstall bundler

pkgsrc のほうのをインストールしてみる。

% cd /usr/pkgsrc/misc/ruby-bundler/
% sudo make install clean clean-depends
if /usr/sbin/pkg_info -K /var/db/pkg -qe "ruby18-bundler-[0-9]*"; then  /usr/sbin/pkg_info -K /var/db/pkg -qr "ruby18-bundler-[0-9]*" > /usr/pkgsrc/
misc/ruby-bundler/work/.DLIST;  else  /usr/bin/touch /usr/pkgsrc/misc/ruby-bundler/work/.DLIST;  fi
===> Deinstalling for ruby18-bundler-1.0.15

いや ruby18 ちゃうねん

@miwarin Ruby はインストールされてるバージョンは見ないで、RUBY_VERSION_DEFAULT で指定されてるやつを使いますので。192 か 193 か、お望みの方を指定すればよろしいかと。( @obache )

オス

% sudo make RUBY_VERSION_DEFAULT=192 install

とやったら 1.8 がインストールされた。

あら

% grep -r RUBY_VERSION_DEFAULT /usr/pkgsrc/lang/*
ruby/rubyversion.mk:# RUBY_VERSION_DEFAULT defines default version for Ruby related
ruby/rubyversion.mk:RUBY_VERSION_DEFAULT?=      1.8
ruby/rubyversion.mk:_RUBY_VERSION_DEFAULT=      ${RUBY_VERSION_DEFAULT:S/.//}
ruby/rubyversion.mk:#   Default value is set to ${RUBY_VERSION_DEFAULT}
ruby/rubyversion.mk:.  if ${RUBY_VERSION_DEFAULT} == "1.8"
ruby/rubyversion.mk:.  elif ${RUBY_VERSION_DEFAULT} == "1.9"
ruby/rubyversion.mk:MULTI+=     RUBY_VERSION_REQD=${RUBY_VERSION_REQD:U${_RUBY_VERSION_DEFAULT}}
ruby/rubyversion.mk:                    RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}
ruby/rubyversion.mk:                    RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}

1.9 ?

やってみる

% sudo make RUBY_VERSION_DEFAULT=1.9 install clean clean-depends
=> Bootstrap dependency digest>=20010302: found digest-20080510
=> Checksum SHA1 OK for bundler-1.0.15.gem
=> Checksum RMD160 OK for bundler-1.0.15.gem
===> Installing dependencies for ruby19-bundler-1.0.15
==========================================================================
The following variables will affect the build process of this package,
ruby19-bundler-1.0.15.  Their current value is shown below:

        * BDB185_DEFAULT = db1
        * BDB_DEFAULT = db4
        * SSLBASE = /usr
        * SSLCERTS = /etc/openssl/certs
        * SSLDIR = /etc/openssl
        * SSLKEYS = /etc/openssl/private

Based on these variables, the following variables have been set:

        * BDBBASE = /usr
        * BDB_LIBS (defined, but empty)
        * BDB_TYPE = db1

You may want to abort the process now with CTRL-C and change their value
before continuing.  Be sure to run `/usr/bin/make clean' after
the changes.
==========================================================================
=> Build dependency checkperms>=1.1: found checkperms-1.11
=> Full dependency ruby19-base>=1.9.2: found ruby19-base-1.9.2pl180nb2
===> Overriding tools for ruby19-bundler-1.0.15
===> Extracting for ruby19-bundler-1.0.15
Unpacked gem: '/usr/pkgsrc/misc/ruby-bundler/work/bundler-1.0.15'
===> Patching for ruby19-bundler-1.0.15
===> Creating toolchain wrappers for ruby19-bundler-1.0.15
===> Configuring for ruby19-bundler-1.0.15
=> Checking for portability problems in extracted files
===> Building for ruby19-bundler-1.0.15
=> Removing backup files of patch before build
  Successfully built RubyGem
  Name: bundler
  Version: 1.0.15
  File: bundler-1.0.15.gem
=> Unwrapping files-to-be-installed.
INFO: [subst.mk:unwrap] Nothing changed in ./lib/bundler/man/bundle-config.
===> Installing for ruby19-bundler-1.0.15
=> Generating pre-install file lists
=> Installing gem into installation root
Successfully installed bundler-1.0.15
1 gem installed
Installing ri documentation for bundler-1.0.15...
Installing RDoc documentation for bundler-1.0.15...
=> Cleaning intermediate gem build files
=> gem install
=> Automatic manual page handling
=> Generating post-install file lists
=> Checking file-check results for ruby19-bundler-1.0.15
=> Checking for non-existent script interpreters in ruby19-bundler-1.0.15
=> Checking file permissions in ruby19-bundler-1.0.15
=> Checking for missing run-time search paths in ruby19-bundler-1.0.15
=> Checking for work-directory references in ruby19-bundler-1.0.15
===> Building binary package for ruby19-bundler-1.0.15
=> Creating binary package /usr/pkgsrc/packages/All/ruby19-bundler-1.0.15.tgz
===> Install binary package of ruby19-bundler-1.0.15

おk

eventmachine も ruby 1.9 でインストールしなおす

% cd /usr/pkgsrc/devel/ruby-eventmachine
% sudo make RUBY_VERSION_DEFAULT=1.9 install clean clean-depends

bundle してみる

やはり同じエラー ('A`)

% bundle install --path ~/.bundle
THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include   -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oem.o -c em.cpp
em.cpp: In member function 'void EventMachine_t::_ReadLoopBreaker()':
em.cpp:924: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'bool EventMachine_t::_RunTimers()':
em.cpp:948: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToServer(const char*, int, const char*, int)':
em.cpp:1089: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToUnixServer(const char*)':
em.cpp:1218: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1221: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1237: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1243: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1249: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'int EventMachine_t::DetachFD(EventableDescriptor*)':
em.cpp:1350: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateTcpServer(const char*, int)':
em.cpp:1453: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1455: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1535: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::OpenDatagramSocket(const char*, int)':
em.cpp:1545: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1596: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'void EventMachine_t::ArmKqueueWriter(EventableDescriptor*)':
em.cpp:1625: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'void EventMachine_t::ArmKqueueReader(EventableDescriptor*)':
em.cpp:1647: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::_OpenFileForWriting(const char*)':
em.cpp:1773: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateUnixDomainServer(const char*)':
em.cpp:1805: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1866: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::Socketpair(char* const*)':
em.cpp:1927: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1932: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1934: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1938: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1948: warning: converting to non-pointer type 'long unsigned int' from NULL
*** Error code 1

Stop.
make: stopped in /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10/ext


Gem files will remain installed in /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10 for inspection.
Results logged to /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10/ext/gem_make.out
        from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:499:in `block in build_extensions'
        from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:459:in `each'
        from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:459:in `build_extensions'
        from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:207:in `install'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/source.rb:101:in `block in install'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:78:in `preserve_paths'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/source.rb:91:in `install'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:58:in `block (2 levels) in run'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:93:in `with_build_args'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:57:in `block in run'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `block in each'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:49:in `run'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:8:in `install'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/cli.rb:222:in `install'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/task.rb:22:in `run'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor.rb:246:in `dispatch'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/base.rb:389:in `start'
        from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/bin/bundle:13:in `<top (required)>'
        from /usr/pkg/bin/bundle:19:in `load'
        from /usr/pkg/bin/bundle:19:in `<main>'

@miwarin あ、2011Q4 ですか。current では1.9という指定は廃止されてるので、192 を使うようにしておくのがいいようです。あと、コマンドラインで一発設定なら RUBY_VERSION_REQD に、でもいいですね。( @obache )

ぐふう

本日のツッコミ(全2件) [ツッコミを入れる]

_ hsbt [ bundle install --path ~/.bundle --without development だとど..]

_ みわ [ありがとうゴマス。いけました。 意味は分かってないです ('A`)]


2013-02-15 :-(

_ 午前

0550 起床

0830 検討

_ 午後

1300 検討

1720 退勤

_

1900 Android

2030 日記巡回

2130 飯。牛丼


2014-02-15 :-)

_ 午前

0900 起床 && 部屋掃除

1010 おひる。うどん

1030 アニメ消化

_ 午後

1200 買い物

1500 アニメ消化

IMG_3868

_

1700 ぐったり。部屋の那珂が温まらないのでオフトゥン.in

2100 飯。アジの開き

2200 おやつ。クラシックショコラ( ref. ちゃんと作れるスイーツ pp.26-27 ) 最近作ってなかった。

IMG_3878

_ [Java][Ruby][マルチスレッド][デザインパターン]Java言語で学ぶデザインパターン入門マルチスレッド編 Guarded Suspension - 用意できるまで、待っててね

リクエストが put されるまで get はブロックする。待機する。

スピンロックなどとも言う。

# coding: utf-8

#
# 『増補改訂版Java言語で学ぶデザインパターン入門マルチスレッド編』 http://www.hyuki.com/dp/dp2.html
# 
# Guarded Suspension - 用意できるまで、待っててね
#

require 'thread'
require 'monitor'

class Request
  def initialize(name)
    @name = name
  end
  
  def getName()
    return @name
  end
  
  def to_s()
    return "[ Request #{@name} ]"
  end
end

class RequestQueue
  def initialize()
    @lock = Monitor.new()
    @cond = @lock.new_cond
    @queue ||= []
  end
  
  def getRequest()
    @lock.synchronize {
      while @queue.empty? == true
        begin
          @cond.wait()
        rescue
        end
      end
      return @queue.pop()
    }
  end
  
  def putRequest(request)
    @lock.synchronize {
      @queue.push(request)
      @cond.broadcast()
    }
  end
end

class ServerThread < Thread
  def initialize(requestQueue, name, seed)
    @requestQueeu = requestQueue
    @random = Random.new(seed)
    
    block = Proc.new {
      0.upto(10) {|i|
        request = requestQueue.getRequest()
        puts "#{self} handles #{request}"
        begin
          sleep(random.rand(10))
        rescue
        end
      }
    }
    super(&block)
  end
end

class ClientThread < Thread
  def initialize(requestQueue, name, seed)
    @requestQueue = requestQueue
    @random = Random.new(seed)
    
    block = Proc.new {
      0.upto(10) {|i|
        request = Request.new("No. #{i}")
        puts "#{self} requests #{request}"
        @requestQueue.putRequest(request)
        begin
          sleep(random.rand(10))
        rescue
        end
      }
    }
    super(&block)
  end
end

def main(argv)
  th ||= []
  requestQueue = RequestQueue.new()
  th << ServerThread.new(requestQueue, "Bobby", 6535897)
  th << ClientThread.new(requestQueue, "Alice", 3141592)
  th.each {|t| t.join() }
end

main(ARGV)
ruby GuardedSuspension.rb
#<ClientThread:0x000000002fbde0> requests [ Request No. 0 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 1 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 0 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 2 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 1 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 3 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 2 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 4 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 3 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 5 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 4 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 6 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 5 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 7 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 6 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 8 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 7 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 9 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 8 ]
#<ClientThread:0x000000002fbde0> requests [ Request No. 10 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 9 ]
#<ServerThread:0x00000002abd608> handles [ Request No. 10 ]

ライセンス

Copyright (C) 2002,2006 Hiroshi Yuki.
http://www.hyuki.com/dp/dp2.html
hyuki@hyuki.com

This software is provided 'as-is', without any express or implied warranty.
In no event will the authors be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it freely,
subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim
that you wrote the original software. If you use this software in a product,
an acknowledgment in the product documentation would be appreciated but is not
required.

2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.

参考

『増補改訂版Java言語で学ぶデザインパターン入門マルチスレッド編』

4797331623


2015-02-15 :-)

_ 午前

0830 起床 && 部屋掃除

1130 おひる。うどん

_ 午後

1300 買い物

1400 コーヒーを飲むなど

1500 読書

_

1700 アニメ消化

1800 艦これ

2000 飯

2100 艦これ

_ 買い物

amazon

4774169269

_ 買い物ついでに Ingress やろうと思ったけど諦めた

近所も意外とポータルが多かった。これは無限に歩いてしまう。


2016-02-15 :-)

_ やったこと

0600 起床

0830 労働

1700 退勤

1900 カメラ組み立て

1930 筋トレ

2100 飯。ぶりの梅みそ焼きレシピ


2017-02-15 :-(

_ やったこと

0530 起床

0830 労働

1700 退勤

1900 筋トレ

2100 飯

_ 労について

不具合がまったく再現しません。


2018-02-15 :-)

_ 送迎など

父を病院へ

_ インフラ勉強会 「FPGAアーキテクチャとソフトエラー起因の可用性低下」

discord でチャットしつつ発表者はボイスチャットでしゃべる という形式。いままで勉強会は開催されてたけど忘れてたり飯を食べてたりして、今回初めて参加してみた。といってもチャットですが。

インフラエンジニアの集いなのに何故FPGAなんだというのは置いておいて。古来よりソフトウェア界隈では「宇宙線によりバグが起きた」といったジョークがありますが、航空宇宙分野ではジョークで済まされないらしい。ふえええ と思いながら参加していました。

今後も低レイヤーの話題は出てきそうな感じでした。


2019-02-15 :-|

_

田園都市線労はなんとか座れました。3人席にしては若干広くて、4人席にしては狭いシートがあるんですが、4人座りました。狭いです。

業務ではストレージ労。

_ [艦これ]艦これ 主力オブ主力、抜錨開始!

夕雲改二、巻雲改二の任務です。いまさらやりました。節分任務のときに 5-5 ゲージ破壊したのでせっかくだから月が変わる前に任務達成しておきました。

5-3。道中支援あり。

5-4。道中支援あり。

5-5。道中支援、決戦支援あり。B F D H N O S です。


2020-02-15 :-|

_ 体調不良

まだ咳と頭痛と頭痛がします。

_ [三越][艦これ]「艦これ」×「三越」コラボ 第六次作戦 ― 三越オンラインストア泊地 ― 【前段作戦】

通販は本日 16 時から。欲しいものは買えました。

  • コーヒーカップ
  • 赤ワイン
  • 手摘み完熟梅原酒
  • ゆであずき
  • コンビーフ缶

_ [艦これ]艦これ 5-5

いままで中央下ルートしかやってなかったので上ルート行ってみました。出撃 5 回 1 撤退。節分任務のために 1 回ゲージ削ってあったので。

道中支援、決戦支援ともに不要でした。潜水艦が居ると S 勝利は厳しい。夕張改二特を入れてみるか。

中央下ルートは道中、決戦支援ともに出していたので手間がかかってましたが、上ルートは支援不要なぶん楽ですね。

5 回出撃して消費はこんな。

  • 燃料 4000
  • 弾薬 2500
  • 鉄鋼 3000
  • ボーキ 1200
  • バケツ 12

_ 遊撃隊

そういや真面目にウォッチしてなかったんだけどダラダラとタイムラインを眺めていたら

k01.PNG

なるほどね。


2021-02-15 :-|

_ 日誌

0620 起床

0810 出勤。在宅勤務

1720 退勤

lstat(2) を読んでいた。


2022-02-15 :-)

_ 業務日誌

0800 出勤。在宅勤務

2000 退勤

_

きすけの牛タンです。

かぶを買ったので葉をキンピラにしました。

DSC00563

DSC00565

_ おやつ

ルタオのモンショコラです。

DSC00570

DSC00566

_ ブリドカットセーラ恵美さんの誕生日に花を贈った

誕生日は 2/5 ですが。

花のセンスはとくに持ってないのでいつも花屋にお任せです。


2023-02-15 :-(

_ 業務日誌

0800 出勤。在宅勤務

2200 退勤

_ 日誌

ひろがるスカイ!プリキュアを見る。虹ヶ丘ましろの声が丹下桜にしか聞こえないのでジェネリック丹下桜。

飯。カレー。


2024-02-15 :-(

_ 業務日誌

0800 出勤

1800 退勤

_ 日誌

晴れ。暑い。風が強い。

おひる。パン。

飯。ビーフシチュー。

自宅マンションの外装メンテナンスが開始された。今日は足場を組んでいた。外にいろいろ出していたので全部室内に入れた。狭い。


2025-02-15 :-)

_ 日誌

部屋掃除

コーヒーを飲む。

買い物。

おひるはカレー機関。バレンタインデー前段。バレンタインデーのシーケンスは競争率が高いのだが運良く当選した。なおバレンタインデー中段は全部落選した。

艦娘遊撃隊は松、レンジャー。松のひとと多少会話するなど。艦これをプレイしているらしい。松(艦娘)の話題を振られて、レベル99のまま放置していることを返答したところ、松(遊撃隊) の眼前で松(艦娘) へ指輪を渡す流れとなった。

シールは全20種類らしい。19種類は入手できた。

DSC06530

帰り際にレンジャー(遊撃隊)からお菓子を貰った。「カレー機関の匂い」がする味だった。カレー機関へ行ったことがあるひとならこの感覚が分かるだろう。

DSC06531

DSC06532

DSC06527

DSC06528

DSC06529