Apple Mach O Linker Error突然冒出来

时间:2015-03-01 01:57:14

标签: ios xcode sdk

我目前的项目让我非常疯狂

问题在于我已经添加到我的项目中的sdk了。比如谷歌广告,解析,Facebook和adcolony。

我在几周前第一次开始我的项目时添加了它们,但它们运行良好。

今天我打开了我的项目,清理了它,我开始为所有添加的sdk获得“词法或预处理器问题”。

我将它们全部删除并再次添加它们并且“词法或预处理器问题”已经消失,但被替换为33“Apple Mach O Linker Errors”

我不知道我做错了什么,因为没有任何改变。我正在使用所有sdk的最新版本。

正如我所说,这个项目已经好几周了。

请帮帮我,因为这让我绝对疯狂!

另外我知道Stack Overflow上有很多问题,答案是针对mach-O链接器的错误,但没有一个能帮助我。

以下是错误示例:

Undefined symbols for architecture arm64:
  "std::__throw_bad_alloc()", referenced from:
      std::vector<google_breakpadPFC_::DynamicImageRef, std::allocator<google_breakpadPFC_::DynamicImageRef> >::_M_insert_aux(__gnu_cxx::__normal_iterator<google_breakpadPFC_::DynamicImageRef*, std::vector<google_breakpadPFC_::DynamicImageRef, std::allocator<google_breakpadPFC_::DynamicImageRef> > >, google_breakpadPFC_::DynamicImageRef const&) in ParseCrashReporting(dynamic_images.o)
      google_breakpadPFC_::DynamicImageRef* std::vector<google_breakpadPFC_::DynamicImageRef, std::allocator<google_breakpadPFC_::DynamicImageRef> >::_M_allocate_and_copy<google_breakpadPFC_::DynamicImageRef*>(unsigned long, google_breakpadPFC_::DynamicImageRef*, google_breakpadPFC_::DynamicImageRef*) in ParseCrashReporting(dynamic_images.o)
  "std::string::find_first_not_of(char const*, unsigned long, unsigned long) const", referenced from:
      MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
  "std::string::substr(unsigned long, unsigned long) const", referenced from:
      MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
  "std::string::find_first_of(char const*, unsigned long, unsigned long) const", referenced from:
      MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
  "vtable for __cxxabiv1::__si_class_type_info", referenced from:
      typeinfo for google_breakpadPFC_::IosExceptionMinidumpGeneratorPFC_ in ParseCrashReporting(ios_exception_minidump_generator.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.

1 个答案:

答案 0 :(得分:1)

几年前我遇到了同样的问题。这是因为离开&#34;将项目复制到目的地的组文件夹(如果需要)&#34;添加框架时检查。此选项告诉Xcode将要添加的文件复制到项目目录中。这对于图像,声音等资源很有用,因为它可以将整个项目保存在一个地方而不是分散在整个计算机上,但如果使用框架执行此操作,则会使预处理器和/或链接器混淆,因为它弄乱了搜索路径。