1. rvm使ってるならmysql2 gemはホームディレクトリに入るべきなので、
sudoは付けないのが正しいのではなかろうか。

2. そのエラーはSIZEOF_LONGマクロとsizeof(long)の値が異なる時に出る。
ということは32ビットバイナリと64ビットバイナリをまぜこぜにしてるのかもしれない。
rubyはx86_64のようなので、

$ ARCHFLAGS="-arch x86_64" gem install mysql2

みたいなコマンドになりそう。


ちなみに sqlite3 の gem は何も考えずにインストール出来てる。