今日は連れがオカリナの練習に夜からでかけていたので、夕飯は外で食べなくてはいけませんでした。
そこで、久しぶりに会社の近くにあるカレーの店シーサーに行こうと思ったのですが、なんと、今日見たら店がなくなっていました。
がーん。
まぁ、20年前にはもうすでにあった店なので、なんかあったんでしょうねぇ。
がっくりです。
もう、あの豆野菜たっぷりのカレーは食べられないのか。
まぁ、ご時世なのかもしれませんが。最近のカレーはインド風か、かなり凝ってるやつかに二極化してきてたしなぁ。
シーサーは英国風カレーとありましたが、実際のところ英国であのようなカレーを食べたことなかったし。
少し前の英国風カレーだったのかなぁ。
いずれにしろ残念です。
国分寺に出るとあんまり食べるところがなかったので、新宿に出ました。
しばらくさまよってから、結局大ガードのところのインド料理屋のシディークに入ることにしました。
かなりおなかがいっぱいになりました。
明日から3連休です。
Cygwinと違ってdllがなくていいや、と思っていたMinGWなのですが、配布されているやつはMinGWのdllがないと動かないみたいです。
GCCをmakeするときに--disable-sjlj-exceptions --with-dwarf2としてあるとそうなるんだそうです。
MinGWの実装ではsjljとdwarf2の2種類があるらしくて、上記のようにdwarf2を有効にしてあるときに、gfortranでコンパイルした実行形式を実行するときに、dllが足りないとおこられてしまうことがあるとか。
これを解決するための手っ取り早い方法は、リンク時に-staticオプションをつけて、ライブラリーを静的にリンクしてしまうことですね。
ただ、これをやると実行形式がやたらでかくなります。
stripコマンドでダイエットはできるという話ですけど。
MInGWとsjljで検索すると、sjljに対応したバイナリーもひっかかるみたいなので、もしかしたら、それを使うといいのかもしれません。
今度試してみないとなぁ。
せっかくFreeでポータビリティーがあるコンパイラーがあったと思ったのに、dllといっしょじゃないと動作しないようじゃ使えないものなぁ。
*追記
なんか、x64環境でSEH機能を有効にするためには、--enable-sjlj-exceptions をはずしてgccを作らないといけないらしいです。
SEHというのは Structured Exception Handling ののことなんだとか。
なんのこっちゃ。
システム回りでエラーハンドリングをする際に使う方法なんだそうで。
gccをバイナリーで持ってくる場合は何に気をつければいいんだろ?
Msys環境下でgccってコンパイルできるのかなぁ?