visual studio 2013 で openframeworks をビルド
openframeworks を visual studio 2013 でビルドする際のメモ.
現状だと openframeworks は,vs2012 しかサポートしていないのに,なぜ vs2013 でビルドしようとするのか・・・
それは,Rx.cpp を使いたいからです!!
Rx.cpp って何じゃらほい?ってところは,おいておいて,そんなわけで,vs2013 でビルドしたいと思います.
vs2013 用のパッケージをダウンロード
冒頭でも触れたとおり,公式HPからダウンロードできる openframeworks は vs2012 用です.
ただ,github で,vs2013 用のソースコードを公開してくださっている方がおられるので,そこからダウンロードしたものを使用します.
liquidzym/openFrameworks at VS2013 · GitHub
上記 github から VS2013 ブランチをクローンしてきます.
ブランチを指定して,クローンしてくる方法は下記です.
git clone -b ブランチ名 リポジトリアドレス
ビルド
ビルドの前に
openFrameworks\libs\openFrameworksCompiled\project\vs フォルダに移動し,そこにある openframeworks.sln を開いてビルドするわけですが,そのままではプロジェクトが読み込めません.
なんやかんやしてたら,こんなエラーが出てきました.
どうやら kinect 関連のプロジェクトが読み込めていないみたいです.
なので,同フォルダにある openframeworks.vcxproj をテキストエディタ(Terapad etc.) で開き,kinect 関連の記述を削除します.
Kinect で検索してヒットした箇所を削除したら大丈夫です・・・たぶん.
Kinect 使いたい人は,vs2012 でビルドするか,自前で実装するか,unity に乗り換えましょう.
やっとこさビルド
したらエラーが出るんだな!これが!!
エラーの箇所は,ofVbo.cpp の
if(!vaoChecked){ supportVAOs = ofGetGLProgrammableRenderer();// || glewIsSupported("GL_ARB_vertex_array_object"); <- this should work but has false positives on some cards like emulation in vm's vaoChecked = true; }
ここ.
ここをまるっとコメントアウトしてやると,エラーは消えてビルドが通ります.
エラーの箇所がシェーダまわりくさいので,ちょっと不安が残りますが,まぁ,ヴィジュアル的にそこまでこったことはしないので,まぁいいか.
というわけで,あとは,apps/myApps 以下にプロジェクトを作っていけば,vs2013 & openframeworks で,開発することができます.
これで,Rx.cpp が試せる!!