0

CCHttpRequestCocos2d-x プロジェクトの一部である Android アプリでの使用に問題があります。具体的には、Xcode で iOS アプリをビルドするときには得られない、Eclipse でビルドするときにビルド エラーが大量に発生します。

Eclipse で (Xcode ではなく) 受け取るビルド エラーの例は次のとおりです。

`Type 'CCHttpResponse' could not be resolved`

このエラーは、次の行に関するものです。

CCHttpResponse *response = (CCHttpResponse *)data;

Eclipse プロジェクトと Xcode プロジェクトはどちらも同じ.cppファイルを参照します。Eclipse プロジェクトに Cocos2d-x 拡張機能を認識させるために、次のことを行いました。

  1. プロジェクトを開く => プロパティ => C/C++ 一般 => パスとシンボル => ソースの場所
  2. クリックLink Folder...
  3. 小切手Link to folder in the file system
  4. 拡張機能 (Xcode プロジェクトで動作するもの) を含むフォルダーを参照します。
  5. [OK]、[適用]、[OK] の順にクリックします

HelloWorldScene.cpp私のファイルには他にもいくつかの驚くべきエラーがあることに注意してください。例えば:

Symbol 'vector' could not be resolved.

問題は、Eclipseで何かをセットアップした方法に関連していると思います。私は Eclipse を初めて使用するので、何を試したらよいかわかりません。Xcode プロジェクトでは、すべてが正常にビルドおよび実行されます。

編集#1:Eclipseビルドエラーのほとんどの原因となるコードにコメントした後、エラーに気付きました:

`make: *** [obj/local/armeabi/libgame.so] Error 1`

これが何を意味するのかはわかりませんが、未解決のシンボルよりも根本的なエラーのようです。

Android.mk :

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := game_shared

LOCAL_MODULE_FILENAME := libgame

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

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes                   

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static cocos_extension_static

include $(BUILD_SHARED_LIBRARY)

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

アプリケーション.mk

APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -DCOCOS2D_DEBUG=1
4

1 に答える 1

2

私のアプリケーションではより多くのファイルがロードされており、私のアプリケーションはAndroidとiOSの両方のプラットフォームで適切に実行されているため、いくつかの問題がある Android.mkと思います。あなたは違いを見ることができます..それはあなたを助けるかもしれません. 私も図書館を利用しています。Application.mkAndroid.mkcocos2dx

Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2dcpp_shared

LOCAL_MODULE_FILENAME := libcocos2dcpp

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/FixPhotoScene.cpp \
                   ../../Classes/SplashScene.cpp \
                   ../../Classes/TableViewTest.cpp\
                   ../../Classes/ProcessImage.cpp \
                   ../../Classes/TestUI.cpp
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
LOCAL_WHOLE_STATIC_LIBRARIES += chipmunk_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static

include $(BUILD_SHARED_LIBRARY)

$(call import-module,cocos2dx)
$(call import-module,cocos2dx/platform/third_party/android/prebuilt/libcurl)
$(call import-module,CocosDenshion/android)
$(call import-module,extensions)
$(call import-module,external/Box2D)
$(call import-module,external/chipmunk)

アプリケーション.mk

APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -DCOCOS2D_DEBUG=1
于 2013-07-09T14:50:57.323 に答える