Undefined symbols for architecture arm64

Undefined symbols for architecture arm64
0

#1

Hi,

I am updating a very old game using cocos2dx v2.2.6 and SDKBOX 1.0.16 (that came out today). I have followed all the steps but I hit a deadlock when I updated my iOS target.

I get this error:

Undefined symbols for architecture arm64:
"sdkbox::PluginChartboost::show(std::__1::basic_string<char, std::__1::char_traits<char>,   std::__1::allocator<char> > const&)", referenced from:
    GameLayer::pauseGame(cocos2d::CCObject*) in GameLayerScene.o
"sdkbox::PluginAdMob::isAvailable(std::__1::basic_string<char, std::__1::char_traits<char>,     std::__1::allocator<char> > const&)", referenced from:
    GameLayer::pauseGame(cocos2d::CCObject*) in GameLayerScene.o
 "sdkbox::PluginAdMob::show(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
   GameLayer::pauseGame(cocos2d::CCObject*) in GameLayerScene.o
 "sdkbox::PluginChartboost::isAvailable(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
    GameLayer::pauseGame(cocos2d::CCObject*) in GameLayerScene.o
"sdkbox::PluginAdMob::cache(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
   GameLayer::pauseGame(cocos2d::CCObject*) in GameLayerScene.o
  AppDelegate::applicationDidFinishLaunching() in AppDelegate.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

As you can see, it cannot identify any method related to Ads but the init function for each plugin works fine and doesn’t cause any error.

Anyone noticed such issue or know what can be causing this? I have double checked the frameworks in link binary with framework.

Thank you.


NEW USERS READ THIS! New User Guidance
#2

Can you post your c++ compiler settings?

Looks like some problem with linking SDKBOX for cocos2d v2 is targeted to the default compiler settings (no c++ 11 support, if you turn on the c++11 support you can use SDKBOX for v3)


#3

Thanks for your response, nite.

The C++ compiler settings are set to Compiler Default at the moment. If I turn on c++ 11, would I need to update the project to cocos2d v3?


#4

No, only need to use SDKBOX for v3, can you post a screenshot for your compiler settings?


#5

Sure, if this is what you’re asking for:


#6

Those are my settings for the v2.2.6 project.


#7

I removed my reply as it was not specifically related to the thread.