今日の弁当
今日も弁当持参で出勤することにした。まあ,無理はせずに,朝余裕があるときだけ。
今日も弁当持参で出勤することにした。まあ,無理はせずに,朝余裕があるときだけ。
Mavericksにしたから,というより,Xcode, Homebrew などの開発環境が変わってしまったから,という方が正確なのだが,ともかく,自作のプログラムが動作しなくなった。ちなみに,Homebrewで入れたOpenCVなどを利用してC++で書いた自家用の画像処理プログラム。自炊した書籍を600dpiのカラーJPEGから1200dpiのモノクロTIFFに変換するのに用いている。
まず,そのままターミナルから起動させようとすると,
dyld: Library not loaded: /usr/local/lib/libopencv_core.2.4.dylib というエラー。
よくよく考えると,単にライブラーを探せないという話なので,慌てずにシンボリックリンクを貼り直せが良かったのかもしれない。しかし,開発環境一式をアップデートすることしか頭になかった。結局,何時かはアップデートすることになるので,悪いわけではなかったのだが。
homebrewでbrew doctorとすると,あれこれ古くなっているらしい。そこで,開発環境をアップデートすることにした。MacApp StoreからXcodeの最新版をDLしてインストール。Homebrewもアップデート。そして,OpenCVをhomebrewで入れ直すことに。すると,numpyがないのでインストール出来ないと。そこで,numpyを入れて,brew reinstall opencv として再インストール。
さて,自家用プログラムをビルドしてみる。pkg-configがないよ,とエラー。入れる。Imagemagickがないよ。ん?そんなバカな。あと,boost関係も何か変。
ということで,pkg-config, imagimagick, boost を再インストール。
これで,とりあえずビルドは成功なのだが,実行させるとランタイムエラーが発生。
dyld: Library not loaded: /usr/local/lib/libjpeg.8.dylib
思いつく解決策は2つ。その1。コンパイル時にライブラリーの場所を指定しておく。多分デフォルトと違うのだろう。その2。シンボリックリンクを貼る。どっちにするか,悩ましい。
/usr/local/Cellar/ を探すとあったので,とりあえずリンクを張る。
ln -s /usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib /usr/local/lib/
さあ,これで大丈夫かなと思ったら,別のランタイムエラー。libc++abi.dylib: Magick: no encode delegate for this image format `TIFF'
brew reinstall libtiff として,libtiffを再インストールし,brew reinstall imagemagick –with-lib-tiff として,imagemagickもオプション付きで再インストール。これで TIFF もサポートされるはず。
これで何とか動作するようになった。ああ疲れた。
一念発起ではないが,弁当を持って出勤。木曜日は9時過ぎに家を出ればよく,時間的に余裕があるのと,外食もいいかげん飽きているので。
ということで,朝の残りを中心に冷蔵庫もあさりつつ適当に埋めることに。量は少なめで良いので家内の弁当箱を借りることにした。それでも埋めるのに苦労した。実のところ,おにぎり+おかずちょっとでも十分なので,銀だら粕漬け(朝食用に焼いたものの半分)だけでも良いのだが,ガラ空きだと見た目がちょっとなあと。本末転倒な話ではあるが。
何か埋めるものはないかと,玉子焼き作ってみたが,これが見事に失敗。なんとか塊になっている部分を選んで,ナイフで切って,取り繕う(苦笑)。やれやれ。