“未定义的建筑符号 x86_64” Xcode
“Undefined symbols for architecture x86_64” Xcode
这是我第一次使用 Xcode V11.3.1
我正在尝试在 Xcode 上编译 Buildbox 3 项目,但我得到了错误列表,
36 错误均以以下内容开头:
Undefined symbol:
和这条消息
Undefined symbols for architecture x86_64:
"PTAdInvoker::rewardedVideoDidReward(char const*, bool)", referenced from:
-[AdIntegratorManager rewardedVideoDidReward:] in AdIntegratorManager.o
"PTAdInvoker::interstitialFailed(char const*)", referenced from:
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
"PTAdInvoker::interstitialLoaded(char const*)", referenced from:
-[AdIntegratorManager interstitialLoaded:] in AdIntegratorManager.o
"PTAdInvoker::rewardedVideoFailed(char const*)", referenced from:
-[AdIntegratorManager rewardedVideoFailed:] in AdIntegratorManager.o
"PTAdInvoker::bannerFailed(char const*)", referenced from:
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
"PTAdInvoker::rewardedVideoLoaded(char const*)", referenced from:
-[AdIntegratorManager rewardedVideoLoaded:] in AdIntegratorManager.o
"PTAdInvoker::bannerLoaded(char const*)", referenced from:
-[AdIntegratorManager bannerLoaded:] in AdIntegratorManager.o
"_AOBSendInterstitialAdAttemptReport", referenced from:
-[AdIntegratorManager interstitialImpression:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
"PTAdInvoker::networkFailed(char const*)", referenced from:
-[AdIntegratorManager networkFailed:] in AdIntegratorManager.o
"_AOBStartSessionReporting", referenced from:
-[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
"PTModelGeneralSettings::shared()", referenced from:
-[GameViewController shouldAutorotateToInterfaceOrientation:] in GameViewController.o
-[GameViewController supportedInterfaceOrientations] in GameViewController.o
"PTAdInvoker::rewardedVideoDidEnd(char const*, bool)", referenced from:
-[AdIntegratorManager rewardedVideoDidEnd:] in AdIntegratorManager.o
"PTPAppDelegate::~PTPAppDelegate()", referenced from:
___cxx_global_var_init.2 in GameViewController.o
"cocos2d::Director::mainLoop()", referenced from:
-[GameViewController glkView:drawInRect:] in GameViewController.o
"PTModelController::shared()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTModelController::loadDataForSplashScreen(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, char const*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::Director::setViewport()", referenced from:
-[GameViewController glkView:drawInRect:] in GameViewController.o
"cocos2d::GLViewImpl::createWithEAGLView(void*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::FileUtils::addSearchPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTPAppDelegate::PTPAppDelegate()", referenced from:
___cxx_global_var_init.2 in GameViewController.o
"cocos2d::Application::run()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::Director::setOpenGLView(cocos2d::GLView*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTAdInvoker::interstitialClosed(char const*)", referenced from:
-[AdIntegratorManager interstitialClosed:] in AdIntegratorManager.o
"cocos2d::Director::startAnimation()", referenced from:
-[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
"cocos2d::FileUtils::getInstance()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
cocos2d::FileUtils::sharedFileUtils() in GameViewController.o
"cocos2d::Director::getInstance()", referenced from:
-[AppDelegate applicationWillResignActive:] in AppDelegate.o
-[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
-[GameViewController viewDidLoad] in GameViewController.o
-[GameViewController glkView:drawInRect:] in GameViewController.o
-[GameViewController touchesBegan:withEvent:] in GameViewController.o
-[GameViewController touchesMoved:withEvent:] in GameViewController.o
-[GameViewController touchesEnded:withEvent:] in GameViewController.o
...
"cocos2d::Application::getInstance()", referenced from:
-[AppDelegate applicationDidEnterBackground:] in AppDelegate.o
-[AppDelegate applicationWillEnterForeground:] in AppDelegate.o
-[GameViewController viewDidLoad] in GameViewController.o
"PTModelController::clean()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"_AOBStopSessionReporting", referenced from:
-[AppDelegate applicationWillTerminate:] in AppDelegate.o
"PTBaseModelGeneralSettings::orientation() const", referenced from:
-[GameViewController shouldAutorotateToInterfaceOrientation:] in GameViewController.o
-[GameViewController supportedInterfaceOrientations] in GameViewController.o
"PTAdInvoker::networkLoaded(char const*)", referenced from:
-[AdIntegratorManager networkLoaded:] in AdIntegratorManager.o
"cocos2d::Director::stopAnimation()", referenced from:
-[AppDelegate applicationWillResignActive:] in AppDelegate.o
"_AOBSendRewardedAdAttemptReport", referenced from:
-[AdIntegratorManager rewardedVideoImpression:] in AdIntegratorManager.o
-[AdIntegratorManager rewardedVideoFailed:] in AdIntegratorManager.o
"_AOBSendBannerAdAttemptReport", referenced from:
-[AdIntegratorManager bannerImpression:] in AdIntegratorManager.o
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
"PTAdInvoker::shared()", referenced from:
-[AdIntegratorManager networkLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager networkFailed:] in AdIntegratorManager.o
-[AdIntegratorManager bannerLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialClosed:] in AdIntegratorManager.o
...
"_OBJC_CLASS_$_AdIntegratorInterface", referenced from:
objc-class-ref in CustomAdIntegrator.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
以及其中一些错误消息:
Undefined symbol: PTAdInvoker::rewardedVideoDidReward(char const*, bool)
Undefined symbol: PTAdInvoker::interstitialFailed(char const*)
Undefined symbol: PTAdInvoker::interstitialLoaded(char const*)
Undefined symbol: PTAdInvoker::rewardedVideoFailed(char const*)
Undefined symbol: PTAdInvoker::bannerFailed(char const*)
Undefined symbol: PTAdInvoker::bannerFailed(char const*)
Undefined symbol: PTAdInvoker::rewardedVideoLoaded(char const*)
Undefined symbol: PTAdInvoker::networkFailed(char const*)
经过长时间的搜索,我找到了使用以下方法的解决方案
*
project >> Build setting >> Apple clang - Language - C++ >> Change C++
Standard Library to libstdc++ (GNY C++ Standard Library )
*
它有效并且所有上述错误都消失了但是......
我收到新的以下错误:在此代码
#include <stack> 'stack' file not found
#include <thread>
#include <chrono>
错误 "Lexical or Preprocessor issue"
关于 CCDirector.h
当我删除“#include stack”行时,出现新错误:
'thread' file not found
等等.......
因此,我认为这个解决方案对我无效
或者我可以解决 'stack' file not found ???
感谢您的帮助。
我知道已经很久了,但无论如何,
这个解决方案>>>
project >> Build setting >> Apple clang - Language - C++ >> Change C++
Standard Library to libstdc++ (GNY C++ Standard Library )
会引起注意,
问题从一开始就是这个项目中的一些库和 SDK 不支持 Xcode 模拟器(我已经询问了 SDK 所有者的支持)
当我构建我的应用程序并在真实设备上对其进行测试时,一切正常。
这是我的情况,如果您在构建项目时遇到此问题,而不是在模拟器上 运行 时遇到此问题,请尝试上述解决方案或检查此 post
Xcode build failure "Undefined symbols for architecture x86_64"
这是我第一次使用 Xcode V11.3.1
我正在尝试在 Xcode 上编译 Buildbox 3 项目,但我得到了错误列表, 36 错误均以以下内容开头:
Undefined symbol:
和这条消息
Undefined symbols for architecture x86_64:
"PTAdInvoker::rewardedVideoDidReward(char const*, bool)", referenced from:
-[AdIntegratorManager rewardedVideoDidReward:] in AdIntegratorManager.o
"PTAdInvoker::interstitialFailed(char const*)", referenced from:
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
"PTAdInvoker::interstitialLoaded(char const*)", referenced from:
-[AdIntegratorManager interstitialLoaded:] in AdIntegratorManager.o
"PTAdInvoker::rewardedVideoFailed(char const*)", referenced from:
-[AdIntegratorManager rewardedVideoFailed:] in AdIntegratorManager.o
"PTAdInvoker::bannerFailed(char const*)", referenced from:
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
"PTAdInvoker::rewardedVideoLoaded(char const*)", referenced from:
-[AdIntegratorManager rewardedVideoLoaded:] in AdIntegratorManager.o
"PTAdInvoker::bannerLoaded(char const*)", referenced from:
-[AdIntegratorManager bannerLoaded:] in AdIntegratorManager.o
"_AOBSendInterstitialAdAttemptReport", referenced from:
-[AdIntegratorManager interstitialImpression:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
"PTAdInvoker::networkFailed(char const*)", referenced from:
-[AdIntegratorManager networkFailed:] in AdIntegratorManager.o
"_AOBStartSessionReporting", referenced from:
-[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
"PTModelGeneralSettings::shared()", referenced from:
-[GameViewController shouldAutorotateToInterfaceOrientation:] in GameViewController.o
-[GameViewController supportedInterfaceOrientations] in GameViewController.o
"PTAdInvoker::rewardedVideoDidEnd(char const*, bool)", referenced from:
-[AdIntegratorManager rewardedVideoDidEnd:] in AdIntegratorManager.o
"PTPAppDelegate::~PTPAppDelegate()", referenced from:
___cxx_global_var_init.2 in GameViewController.o
"cocos2d::Director::mainLoop()", referenced from:
-[GameViewController glkView:drawInRect:] in GameViewController.o
"PTModelController::shared()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTModelController::loadDataForSplashScreen(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, char const*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::Director::setViewport()", referenced from:
-[GameViewController glkView:drawInRect:] in GameViewController.o
"cocos2d::GLViewImpl::createWithEAGLView(void*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::FileUtils::addSearchPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTPAppDelegate::PTPAppDelegate()", referenced from:
___cxx_global_var_init.2 in GameViewController.o
"cocos2d::Application::run()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"cocos2d::Director::setOpenGLView(cocos2d::GLView*)", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"PTAdInvoker::interstitialClosed(char const*)", referenced from:
-[AdIntegratorManager interstitialClosed:] in AdIntegratorManager.o
"cocos2d::Director::startAnimation()", referenced from:
-[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
"cocos2d::FileUtils::getInstance()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
cocos2d::FileUtils::sharedFileUtils() in GameViewController.o
"cocos2d::Director::getInstance()", referenced from:
-[AppDelegate applicationWillResignActive:] in AppDelegate.o
-[AppDelegate applicationDidBecomeActive:] in AppDelegate.o
-[GameViewController viewDidLoad] in GameViewController.o
-[GameViewController glkView:drawInRect:] in GameViewController.o
-[GameViewController touchesBegan:withEvent:] in GameViewController.o
-[GameViewController touchesMoved:withEvent:] in GameViewController.o
-[GameViewController touchesEnded:withEvent:] in GameViewController.o
...
"cocos2d::Application::getInstance()", referenced from:
-[AppDelegate applicationDidEnterBackground:] in AppDelegate.o
-[AppDelegate applicationWillEnterForeground:] in AppDelegate.o
-[GameViewController viewDidLoad] in GameViewController.o
"PTModelController::clean()", referenced from:
-[GameViewController viewDidLoad] in GameViewController.o
"_AOBStopSessionReporting", referenced from:
-[AppDelegate applicationWillTerminate:] in AppDelegate.o
"PTBaseModelGeneralSettings::orientation() const", referenced from:
-[GameViewController shouldAutorotateToInterfaceOrientation:] in GameViewController.o
-[GameViewController supportedInterfaceOrientations] in GameViewController.o
"PTAdInvoker::networkLoaded(char const*)", referenced from:
-[AdIntegratorManager networkLoaded:] in AdIntegratorManager.o
"cocos2d::Director::stopAnimation()", referenced from:
-[AppDelegate applicationWillResignActive:] in AppDelegate.o
"_AOBSendRewardedAdAttemptReport", referenced from:
-[AdIntegratorManager rewardedVideoImpression:] in AdIntegratorManager.o
-[AdIntegratorManager rewardedVideoFailed:] in AdIntegratorManager.o
"_AOBSendBannerAdAttemptReport", referenced from:
-[AdIntegratorManager bannerImpression:] in AdIntegratorManager.o
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
"PTAdInvoker::shared()", referenced from:
-[AdIntegratorManager networkLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager networkFailed:] in AdIntegratorManager.o
-[AdIntegratorManager bannerLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager bannerFailed:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialLoaded:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialFailed:] in AdIntegratorManager.o
-[AdIntegratorManager interstitialClosed:] in AdIntegratorManager.o
...
"_OBJC_CLASS_$_AdIntegratorInterface", referenced from:
objc-class-ref in CustomAdIntegrator.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
以及其中一些错误消息:
Undefined symbol: PTAdInvoker::rewardedVideoDidReward(char const*, bool)
Undefined symbol: PTAdInvoker::interstitialFailed(char const*)
Undefined symbol: PTAdInvoker::interstitialLoaded(char const*)
Undefined symbol: PTAdInvoker::rewardedVideoFailed(char const*)
Undefined symbol: PTAdInvoker::bannerFailed(char const*)
Undefined symbol: PTAdInvoker::bannerFailed(char const*)
Undefined symbol: PTAdInvoker::rewardedVideoLoaded(char const*)
Undefined symbol: PTAdInvoker::networkFailed(char const*)
经过长时间的搜索,我找到了使用以下方法的解决方案
*
project >> Build setting >> Apple clang - Language - C++ >> Change C++ Standard Library to libstdc++ (GNY C++ Standard Library )
*
它有效并且所有上述错误都消失了但是...... 我收到新的以下错误:在此代码
#include <stack> 'stack' file not found
#include <thread>
#include <chrono>
错误 "Lexical or Preprocessor issue" 关于 CCDirector.h
当我删除“#include stack”行时,出现新错误:
'thread' file not found
等等.......
因此,我认为这个解决方案对我无效 或者我可以解决 'stack' file not found ???
感谢您的帮助。
我知道已经很久了,但无论如何,
这个解决方案>>>
project >> Build setting >> Apple clang - Language - C++ >> Change C++ Standard Library to libstdc++ (GNY C++ Standard Library )
会引起注意,
问题从一开始就是这个项目中的一些库和 SDK 不支持 Xcode 模拟器(我已经询问了 SDK 所有者的支持)
当我构建我的应用程序并在真实设备上对其进行测试时,一切正常。
这是我的情况,如果您在构建项目时遇到此问题,而不是在模拟器上 运行 时遇到此问题,请尝试上述解决方案或检查此 post
Xcode build failure "Undefined symbols for architecture x86_64"