«Неопределенные символы для архитектуры x86_64» Xcode - PullRequest
0 голосов
/ 22 февраля 2020

Это мой первый раз с XCode V11.3.1

Я пытаюсь скомпилировать проект Buildbox 3 на XCode, и я получил список ошибок, 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 >> Настройка сборки >> Apple clang - Язык - C ++ >> Изменить стандартную библиотеку C ++ на libstdc ++ (Стандартная библиотека GNY C ++)

*

это работает, и все вышеупомянутые ошибки ушли, НО .... я получил новую следующую ошибку: в этом коде

#include <stack>            'stack' file not found
#include <thread>
#include <chrono>

ошибка под "Лексическая проблема или проблема препроцессора" на CCDirector .h

и когда я удаляю строку "#include stack", я получаю новую ошибку:

 'thread' file not found

И так далее ...

Поэтому, я думаю, что это решение неэффективно для меня, или я могу решить файл 'стека' не найден ???

Спасибо за любую помощь.

...