2018年10月26日金曜日

CAFFE: Using Apple BLAS

Caffeをソースコードからビルドするときには、一般的にはMakefile.configを編集して自分の環境に合わせるのがまっとうなやり方。LINUX上では、CMakeが使えたけど、macOSではうまくいかなかった。
CAFFEをなるべくmacOSで用意されているライブラリを極力使おうと思えば、BLASをAccelerate Frameworkのものを使いたい。そのための設定としては、Makefile.config内のBLASの設定の部分を、適当にblasとでもいれておけばAccelerate FrameworkのBLASを使ってくれる。問題は、このCAFFEのライブラリを使った自前のプログラムを動かすときに、

d.cpp:2:10: fatal error: 'cblas.h' file not found

というメッセージが出てしまう。これはBLASのCバインディング用のヘッダが見つからないというエラーだ。この手のヘッダは、/usr/includeあたりにリンクが張られていると思っていたが、macOS 10.12 (Sierra)のXcode9.2ではそうではないようだ。仕方が無いので、直接Frameworkのヘッダを指定する。つまり、
-I/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/


と指定してやらなければならない、みたいだ。面倒だな。/usr/includeにシンボリックリンクを張ってしまっても良いんじゃ無いか。

2018年10月18日木曜日

Access Denied. You don't have permission to access "SITE" on this server.

掲題のエラーが少し前にSafariでSMBCのサイトにアクセスした時に出現した。びびった。とりあえず、SMBCに電話。ちゃんとサーバは動いているとのお返事。次にプロバイダ(ISP)に電話。これも通常運転。
そこで、次にDNSでSMBCを引いてみた。そして別のISPのサーバからDNSを引いてみた。全然違う。これは、DNS Changerなのか。ウィルスか。とりあえずCISCOのCLANSCANでチェック。なんもでない。アンチウィルスソフトを片っ端からダウンロードしてスキャン。出てこない。。。。
いろいろすったもんだしたあげく、ルータが原因だと言うことが分かった。調べてみると、いろいろ困っている人が世界中にいらっしゃる。アクセスできないサイトは特定のサイト。www.smbc.co.jp, www.ebay.com, www.usps.com, www.costco.com などが上げられていた。逆引きすると、これは全部akamaiedge.netのサーバ。なにか有るのか。多くの人はルータのリセットで元に戻ったのこと。わたしんとこでは、ひとつはこけて、もう使えなくなったが、もう一つはリセットで元に戻る。
解決方法が分かったけど、リセットばっかしてらんないしな。どうにかならんかな。