Windows で GNU ツールを使う

ふだんやってる Tips みたいなことは、簡単なことでもどんどん書いておくことにする。

開発用には Windows でも make や tar や touch を使いたい。Makefile を書くなら mv や cp や rm もないと面倒くさい。そこで、Windows 用にビルドされた Gnu のツールを PATH の通ったフォルダに入れておくとよい。

から入手できる。ぜんぶをまとめたのもダウンロードできるけど、自分は CoreUtils, Make, Tar くらいしか入れてない(find とか sort は Windows 標準のと被るので)。ようするにベーシックな Makefile が動けばいいという感じ。凝ったことはせずコマンドプロンプト(cmd.exe)で make と叩くのに使うだけで、個別のコマンドを使うことはあまりない(touch や tar くらいか)。

最近気づいたのだけど、Patch は Windows 8.1 で使おうとすると UAC の警告に阻まれてふつうに使えない。OS 全体で UAC を無効にするのがいやなら、‘Using “patch” from the GnuWin32 project on Windows 7’ に書かれている方法で exe に manifest を埋め込むとよい。

これだけで自前のたいていの Makefile は Windows と OS X (Unix) とで共用できるようになるので重宝。Visual Studio の nmake は、Windows 専用の開発にならいいけど、Python とかのプロジェクトにはなんかしっくりこないからね。

iPhone の写真をバックグラウンドでアップロードする

前回 iCloud のバックアップから写真を復旧させる話を書いたけど、うっかりでここまでやらなきゃいけないのはたいへんである。写真を自動でどこかにバックアップするような方法はないか調べてみた。

まず誰でも思いつくサービスとして Dropbox。Dropbox はインストールするとカメラアップロードという機能を猛プッシュしてくるので、ひとつ使ってみる。

IMG_0285

Dropbox のカメラアップロードは iOS の位置情報サービスを使う。iPhone の移動を感知するとそこで Wi-Fi が使えるかを確認して、使えるようなら写真のアップロードを始める。なるほど……ではあるけれど、ずっと位置情報取得のコンパスアイコンが出てるのが気になる。

iOS では 7 からバックグラウンドでできるタスクが増えたので、もうちょっと賢い実装もある。Dropbox もそのうちそうなるだろうけど、いまは後方互換性を気にしているのかもしれない。

Facebook アプリには写真の同期設定というのがあって、iPhone で撮影した写真を自動で Facebook にアップロードさせることができる。アップロードされる写真はすべて公開設定はプライベートなので、手動で共有しないかぎり他の人からは見えない。

IMG_0283

これはわりとうまく動いているので Facebook を使っているなら(そして Facebook を信用できるなら)おすすめできる。

ただしアップロードされる写真はフルサイズではない。じゅうぶん大きいけれども、オリジナルよりは劣化する。

Flickr アプリも新バージョンではバックグラウンドで写真をアップロードできる。ただしちょっと前から日本語の App Store からは購入できなくなってしまっている。

けど、以前のバージョンを購入したことがある人なら最新バージョンを使える。あまり知られていないけど、自動アップデートには現れなくなるものの、国内のストアから撤退したアプリが海外のストアではアップデートされ続けている場合、「購入済み」から再ダウンロードすることで最新版に更新できるのだ。Flickr は最初は日本のストアでも公開されていたのでその時ダウンロードしている人も少なくないと思う。

IMG_0286

Flickr の最新版で Auto Sync をオンにするとあとは自動で Flickr に(プライベート設定で)アップロードされる。サイズもオリジナルだし、これが本命かなあ。ただしアップロードを Wi-Fi に限定するオプションは(いまのところ)ない、というじつに男気のある実装なので通信量には注意。

iOS は 8 で写真まわりも iCloud 使うように変わるらしいので、そのときにはバックアップからのサルベージももう少し楽になるかもしれない。