Use AutolayoutをオフでOK

解決方法は表題の通り。
「Use Autolayout」チェックボックスは、Xcode 4.5 で問題の xib を選択して、Utilities ビューで File Inspector を開く。
そこの「Interface Builder Document」に「Use Autolayout」チェックボックスがある!

これでエラーは起きずに iOS 5.1 でも iOS 6 でもちゃんと動作するようになる。


このエラー、原因は xib 編集すると自動的に生成される NSLayoutConstraint。
これが iOS 6以降でしか使えないのに、Deployment Target が 5.1 になっていても InterfaceBuilder で View に何かを乗せると xib に NSLayoutConstraint が生成されちゃう。
(View に何も乗せないと問題ない!けど、xib 使う意味がない…)
で、iOS 5.1 の環境で動作させると「NSLayoutConstraintってなに?インスタンス作れないよ!」ということになってエラーになる。