1

我可以在 vc2012 中运行我的代码。我需要将我的代码编译为 android,所以我使用 linux 系统来运行 ./build_native.sh 。然后终端变成了这个

StaticLibrary  : libchipmunk.a
Compile thumb  : cpufeatures <= cpu-features.c
StaticLibrary  : libcpufeatures.a
SharedLibrary  : libgame.so
/myData/Data/JAVA/adt-bundle-linux-x86_64-20130717/android-ndk-r8e/toolchains/arm-linux-      androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-     androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: ./obj/local/armeabi/objs/game_shared/__/__/Classes/AppDelegate.o: in function AppDelegate::applicationDidFinishLaunching():jni/../../Classes/AppDelegate.cpp:29: error:  undefined reference to 'CPWScene::createScene()'
collect2: ld returned 1 exit status
make: *** [obj/local/armeabi/libgame.so] Error 1
make: Leaving directory `/myData/Workspace/C++/cocos2d-2.1rc0-x-2.1.3/Workspace/ClassDesgin/proj.android'
4

1 回答 1

4

您必须将 CPWScene.cpp 文件添加到 Android.mk 文件中,以便编译器可以编译该文件。Android.mk 文件位于 proj.android/jni 文件夹中。为了编译您的项目,您需要在 Android.mk 文件中列出所有 cpp 文件。

于 2013-07-21T17:52:32.740 回答