cocos2d-x发生undefined reference to `XX'异常 一劳永逸解决的方法

转自: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

原文地址:https://www.cnblogs.com/mqxnongmin/p/10548363.html