Posted at

複数人でcocos2d-xで開発するためにやっておきたい設定

More than 1 year has passed since last update.

過去の記事の転載です。情報が古いかもしれません


現在、cocos2d-x-2.0.4を使っていますが、ビルド時など各種ローカルパスがみんなで違っていて、いちいち設定し直す必要があります。。。

これは面倒くさい!

ということで、提案なんですが、統一しませんか?

これをやっておけば、cocos2d-2.0-x-2.0.4/ファイル以下にプロジェクトファイルをおかずに済む!など各種メリットがあります!


cocos2dxのファイルの設定

cocos2dxのサイトからDLした、ファイルは以下のように起きましょう。

あと、AndroidのNDKも!

# cocos2dxのファイルパス

/Develop/cocos2dx/cocos2d-2.0-x-2.0.4
# AndroidのNDKのパス
/Develop/android/android-ndk-r8b

/User/hogehoge/うんちゃらかんちゃらではなく、/Develop/以下に各種ファイルをおいておけば、みんなパスが一緒でハッピー!


build_native.shの書き方

そうしておけば、buld_native.shが統一的に書けます。

以下のようなファイル構成にしましょう。iOSとAndroidを開発するときによくやるファイル構成のはず...


  • アプリ名


    • Classes


      • cppのファイル達



    • proj.android


      • Androidのファイル



    • Resources


      • 画像ファイル達





  • アプリ名.xcodeproj

そして、build_native.shの上のほうの一部は以下のようにしましょう

NDK_ROOT=/Develop/android/android-ndk-r8b

COCOS2DX_ROOT=/Develop/cocos2dx/cocos2d-2.0-x-2.0.4
GAME_ROOT="$(cd ../../ && pwd)"
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources

これで、統一されるはず


proj.android/jin/Android.mk

あとパスが関わってくるのはAndroid.mkですかね。


LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
/Develop/cocos2dx/cocos2d-2.0-x-2.0.4/cocos2dx/platform \
/Develop/cocos2dx/cocos2d-2.0-x-2.0.4/external \
/Develop/cocos2dx/cocos2d-2.0-x-2.0.4/external/Box2D

こんな感じ。これで、ほとんど環境依存をなくせるのではないでしょうか?


.gitignoreの設定

まだ、ちゃんとは理解してませんが、とりあえず、こんな感じ

# Mac

.DS_Store
# Xcode
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
*.xcworkspace
!default.xcworkspace
xcuserdata
profile
*.moved-aside
DerivedData
.idea/

# Cocos2dx Android
bin
*.so
*.o
*.o.d


それでも、./build_native.shが出来ないとき

上記の.gitignoreを設定していれば、大丈夫だと思いますが、たとえばgitを使わずにファイルを貰った時に、./build_native.shが出来ない場合があります。

以下のようなエラーログが吐き出されます

make: No rule to make target `/cygdrive/c/cocos2d-x/AppTest/proj.android/../../cocos2dx/CCConfiguration.cpp', needed by `obj/local/armeabi/objs-debug/cocos2dx_static/CCConfiguration.o'. Stop

なんかファイルが残ってい未定なので、以下のファイルを消してやります。


  • proj.android/libs/armeabi

  • proj.android/obj

これで、もう一度、./build_native.shすれば、できるはず!

参考:http://www.cocos2d-x.org/boards/6/topics/17716


Eclipseの設定


  • build_native.shを設定するやつ

は環境に合わせないといけないので、それだけは仕方ないですね!


おわりに

このあたりの環境設定なんとか便利になってほしい。。