cocos2d-x发生undefined reference to `XX'(坑死自己了)

来源:互联网 发布:大一c语言期中考试 编辑:程序博客网 时间:2024/06/05 21:04






SharedLibrary  : libcocos2dcpp.so
jni/../../Classes/GameScene.h:20: error: undefined reference to 'GameScene::GameScene()'
collect2.exe: error: ld returned 1 exit status
make: *** [obj/local/armeabi/libcocos2dcpp.so] Error 1
make: Leaving directory `C:/Users/Administrator/Desktop/mood/proj.android'
The Selected NDK toolchain version was 4.8 !
Traceback (most recent call last):
  File "C:/Users/Administrator/Desktop/mood/proj.android/build_native.py", line 166, in <module>
    build(opts.ndk_build_param,opts.android_platform,opts.build_mode)
  File "C:/Users/Administrator/Desktop/mood/proj.android/build_native.py", line 153, in build
    do_build(cocos_root, ndk_root, app_android_root,ndk_build_param,sdk_root,android_platform,build_mode)
  File "C:/Users/Administrator/Desktop/mood/proj.android/build_native.py", line 89, in do_build
    raise Exception("Build dynamic library for project [ " + app_android_root + " ] fails!")
Exception: Build dynamic library for project [ C:\Users\Administrator\Desktop\mood\proj.android ] fails!


转自:http://www.myexception.cn/operating-system/1620542.html

cocos2d-x发生undefined reference to `XX'错误 一劳永逸解决方法

参考文章:

http://blog.csdn.net/kafeidev/article/details/9157895

http://blog.csdn.net/fu_zk/article/details/12836431



eclipse cocos2dx项目,出现错误

[plain] view plaincopyprint?
  1. E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/../../Classes/HelloWorldScene.cpp:27: undefined reference to `GameLayer::GameLayer()'  
  2. E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/../../Classes/HelloWorldScene.cpp:27: undefined reference to   

原因是android的nkd编译需要将每个cpp尽心进行声明

进入jni-->Classes目录下的Android.mk

[plain] view plaincopyprint?
  1. LOCAL_SRC_FILES := AppDelegate.cpp \  
  2.                    HelloWorldScene.cpp  

修改成


如下:

[plain] view plaincopyprint?

  1. LOCAL_MODULE_FILENAME := libcocos2dcpp


    MY_CPP_LIST := $(wildcard $(LOCAL_PATH)/*.cpp)
    MY_CPP_LIST += $(wildcard $(LOCAL_PATH)/hellocpp/*.cpp)
    MY_CPP_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)


    LOCAL_SRC_FILES := $(MY_CPP_LIST:$(LOCAL_PATH)/%=%)




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

0 0
原创粉丝点击