Android linker error (NDK10e) Undefined reference to cocos2d::ui

Hey

I was having issues some sdkbox and some random crashes so decided to upgrade to ndk10c.

I’m now having linking errors when using cocos2d::ui

error: undefined reference to 'cocos2d::ui::ListView::scrollToItem(int, cocos2d::Vec2 const&, cocos2d::Vec2 const&)

and

error: undefined reference to 'cocos2d::Sprite::setDisplayFrameWithAnimationName(std::string const&, int)

My android.mk file looks like this:

    LOCAL_PATH := $(call \
my-dir)

include $(CLEAR_VARS)

$(call import-add-path,$(LOCAL_PATH)/../../../cocos2d)
$(call import-add-path,$(LOCAL_PATH)/../../../cocos2d/external)
$(call import-add-path,$(LOCAL_PATH)/../../../cocos2d/cocos)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/extensions)
$(call import-add-path, $(LOCAL_PATH))

LOCAL_MODULE := cocos2dcpp_shared


FILE_LIST := $(wildcard $(LOCAL_PATH)/../../../Classes/*.cpp)
FILE_LIST += $(wildcard $(LOCAL_PATH)/../../../Classes/*.c)

LOCAL_SRC_FILES := hellocpp/main.cpp \
LOCAL_SRC_FILES += $(FILE_LIST:$(LOCAL_PATH)/%=%)

LOCAL_MODULE_FILENAME := libcocos2dcpp

LOCAL_CPPFLAGS := -DSDKBOX_ENABLED
LOCAL_LDLIBS := -landroid \
-llog
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../Classes
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d/cocos
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d/cocos/ui
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d/external
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d/extensions

LOCAL_WHOLE_STATIC_LIBRARIES := PluginFacebook \
sdkbox \
PluginSdkboxAds \
PluginAdColony \
PluginChartboost

LOCAL_STATIC_LIBRARIES := cocos2dx_static
LOCAL_STATIC_LIBRARIES += cocos_extension_static
LOCAL_STATIC_LIBRARIES += cocos_ui_static
LOCAL_STATIC_LIBRARIES += cocos_external_static

LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static

# _COCOS_HEADER_ANDROID_BEGIN
# _COCOS_HEADER_ANDROID_END



# _COCOS_LIB_ANDROID_BEGIN
# _COCOS_LIB_ANDROID_END

include $(BUILD_SHARED_LIBRARY)

$(call import-module,.)
$(call import-module, ./sdkbox)
$(call import-module, ./pluginfacebook)
$(call import-module, ./pluginsdkboxads)
$(call import-module, ./pluginadcolony)
$(call import-module, ./pluginchartboost)
$(call import-module,extensions)
$(call import-module,ui)


# _COCOS_LIB_IMPORT_ANDROID_BEGIN
# _COCOS_LIB_IMPORT_ANDROID_END

Does anyone know what i need to do to fix this problem?

Thanks

how did you build Android project?
provide build-cfg.json also
looks like something misconfigured

don’t understand why did you include this stuff

all of this came with library cocos2dx_static that is allready included

Hi camkadev

Added that stuff purely because someone else said that worked for them. I wasn’t convinced…

I finally got this working, but the only way i could do it was to create a new project and import everything back into that bit by bit. Very strange.