0

cocos2d-xを使ってAndroidとIOS向けのゲームを1つやっています。そのために、http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-startedリンクに従いました。LevelHelper をプロジェクトにリンク/インクルードしようとすると、以下のエラーがスローされる場合を除いて、すべて正常に動作しています。

undefined reference to `LevelHelperLoader::LevelHelperLoader(char const*)'   

以下は Android.mk ファイルです

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := game_shared

LOCAL_MODULE_FILENAME := libgame

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

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(LOCAL_PATH)/../../../Box2D \
$(LOCAL_PATH)/../../Classes/LevelHelper \
$(LOCAL_PATH)/../../Classes/LevelHelper/

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static box2d_static

include $(BUILD_SHARED_LIBRARY)

$(call import-module,CocosDenshion/android) $(call import-module,cocos2dx) $(call import-module,Box2D)

どこが間違っているのかわかりません。手がかりは非常に役立ちます。

4

2 に答える 2

0

最後に、これに対する答えを得ました。以下のようにすべての.cppファイルLevelHelperを追加する必要がありましたAndroid.mk

LOCAL_SRC_FILES := helloworld/main.cpp \
               ../../Classes/AppDelegate.cpp \
               ../../Classes/HelloWorldScene.cpp \
               ../../Classes/LevelHelper/LevelHelperLoader.cpp \
               ../../Classes/LevelHelper/Utilities/LHDictionary.cpp \
               ../../Classes/LevelHelper/Utilities/LHObject.cpp \
               ../../Classes/LevelHelper/Utilities/LHArray.cpp \
               ../../Classes/LevelHelper/Nodes/SHDocumentLoader.cpp \
               ../../Classes/LevelHelper/Nodes/LHSprite.cpp \
               ../../Classes/LevelHelper/Nodes/LHTouchMgr.cpp \
               ../../Classes/LevelHelper/Nodes/LHSettings.cpp \
               ../../Classes/LevelHelper/Nodes/LHPathNode.cpp \
               ../../Classes/LevelHelper/Nodes/LHParallaxNode.cpp \
               ../../Classes/LevelHelper/Nodes/LHNode.cpp \
               ../../Classes/LevelHelper/Nodes/LHLayer.cpp \
               ../../Classes/LevelHelper/Nodes/LHJoint.cpp \
               ../../Classes/LevelHelper/Nodes/LHFixture.cpp \
               ../../Classes/LevelHelper/Nodes/LHCuttingEngineMgr.cpp \
               ../../Classes/LevelHelper/Nodes/LHCustomSpriteMgr.cpp \
               ../../Classes/LevelHelper/Nodes/LHContactNode.cpp \
               ../../Classes/LevelHelper/Nodes/LHContactListener.cpp \
               ../../Classes/LevelHelper/Nodes/LHContactInfo.cpp \
               ../../Classes/LevelHelper/Nodes/LHBezier.cpp \
               ../../Classes/LevelHelper/Nodes/LHBatch.cpp \
               ../../Classes/LevelHelper/Nodes/LHAnimationNode.cpp \
               ../../Classes/LevelHelper/CustomClasses/LHUntitledClass.cpp \
               ../../Classes/LevelHelper/CustomClasses/TemporaryDummyClass.cpp

さらにサポートが必要な場合は、このリンクを参照してください。他のユーザーにも役立つことを願っています。

于 2012-09-27T09:37:18.547 に答える
0

LevelHelper は、iOS 用の cocos2d-x とのみ互換性があり、Mac のみと互換性があり、Android プラットフォームではまだテストされていません。また、cocos2d-x の Web サイトでは、Android に関する進捗状況については言及されていません。ここにリンクがあります http://www.cocos2d-x.org/news/14

于 2012-09-25T23:08:36.457 に答える