こちらのサイト参照
http://rakuishi.com/cocos2d-x/5810/
このサイト以外にやった事をメモっていく。
プロジェクトを作成する時のコマンド
本文中には、以下の用に書いてあったが、今回はjavascriptのプロジェクトを作成したかったので、cpp
ではなく、javascritp
とする。
気分的にプロジェクト名もMyJsProject
としてみた。
$ ./create_project.py -project MyProject -package com.mapyo.myproject -language cpp ↓ $ ./create_project.py -project MyJsProject -package com.mapyo.myproject -language javascript
eclipseでビルドしようとする
以下のエラーたちが発生したので、やっつけていく。
[eclipse]build_native.sh
の修正
eclipseでビルドしようとする(勝手にやってくれる)と、以下のようなエラーが発生
**** Build of configuration Default for project MyJsProject **** bash /Applications/cocos2d-x/projects/MyJsProject/proj.android/build_native.sh please define NDK_ROOT **** Build Finished ****
以下のサイトを参考にbuild_native.sh
のNDK_ROOT
のパスの指定を行う。
NDK_ROOT="/Applications/android-ndk"
※最初に参考にしたサイト通りにしていれば、COCOS2DX_ROOT
のパスの設定は必要ない!
http://qiita.com/CsStay47/items/72c60f7435ccda4d55e9
また、AndroidManifest.xml
の設定も同時に行っておく。
自分で作成したプロジェクトと、libcocos2dx
のプロジェクトも修正した。
※project.properties
の設定をするとエラーになる!
[eclipse]プロジェクト実行時に以下のエラー
Errors occurred during the build. Errors running builder 'Integrated External Tool Builder' on project 'MyJsProject'. The builder launch configuration could not be found.The builder launch configuration could not be found.
参考サイト
http://stackoverflow.com/questions/12836941/the-builder-launch-configuration-could-not-be-found
こいつが赤くなってたのでremoveしてみる。
ここまででGALAXY Nexusだったら実機で実行出来るようになった。
[eclipse]以下のようなエラー
Description Resource Path Location Type make: *** [obj/local/x86/objs-debug/cocos2dx_static/platform/android/CCCommon.o] Error 1 puzzle C/C++ Problem format not a string literal and no format arguments [-Werror=format-security] CCCommon.cpp /puzzle/cocos2dx/platform/android line 54 C/C++ Problem format not a string literal and no format arguments [-Werror=format-security] CCCommon.cpp /puzzle/cocos2dx/platform/android line 44 C/C++ Problem
jni/Application.mk
に以下を追加する。
APP_CFLAGS += -Wno-error=format-security
[eclipse]エミュレータで起動しない。
一方、GALAXY Nexusのエミュレータで起動しようとすると、出来ない。。。 logcatに以下のようなエラーが出ている。。。。
E/AndroidRuntime(617): FATAL EXCEPTION: GLThread 79 E/AndroidRuntime(617): java.lang.IllegalArgumentException: No configs match configSpec E/AndroidRuntime(617): at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:838) E/AndroidRuntime(617): at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:994) E/AndroidRuntime(617): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1348) E/AndroidRuntime(617): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1202)
GPU emulationをオンにしたらよいらしい。
しかし、この設定で起動するとエミュレータが重くなりすぎてまともに動かなかった。。。
これは、TargetのAndroidのバージョンを上げると解消されるようだ。 手元で確認したかぎりでは、Android4.1.2にするとエミュレータが起動するようになった。
起動できたー!!!
Eclipseの設定
Eclipse上でAVD Managerを起動するメニューがなかったので作成。 http://www.devlog.alt-area.org/?p=547
[ios]XcodeでRunボタンを押してもシミュレータが立ち上がってこない。。。
Product→Schem→Edit Scheme→Run MyJsProject
Product→Schem→Edit Scheme→Run MyJsProject
上記の2点を対応すると、エミュレータが立ち上がってきた!!!
やったー!
まとめ
振り返って見るとちゃんとまとまってないなー。。。