Apple Mach O-Linker错误Xcode

时间:2015-05-26 02:57:38

标签: ios objective-c xcode linker

我现在已经使用RevMob作为广告来源了一段时间。最近他们推出了奖励视频广告,所以我尝试添加他们的新框架。当我将新框架拖入我的Xcode项目(与现有框架名称相同的名称:RevMobAds.framework)时,我立刻遇到了错误。我很快删除了框架,但我的项目仍有8个错误:Apple Mach O-Linker Error。我已经查了很多这个,这就是我尝试过的:

  • 仅将$(ARCHS_STANDARD_INCLUDING_64_BIT)添加到架构构建活动架构中

  • 设为'否'对于有效的架构'

  • 设置为arm64,armv7和armv7s

  • 删除了DerivedData文件夹及其内容,清理并构建 再次

以下是我的错误:(以粗体显示的所有内容均以红色突出显示错误)

Undefined symbols for architecture x86_64:   "_AVMediaTypeVideo",
referenced from:
      -[RevMobDeviceInfo cameraPermission] in RevMobAds(RevMobDeviceInfo.o)
      ___99-[RevMobFullscreen proceedLoadWithSuccessHandler:andLoadFailHandler:onClickHandler:onCloseHandler:]_block_invoke106
in RevMobAds(RevMobFullscreen.o)   "_OBJC_CLASS_$_AVCaptureDevice",
referenced from:
      objc-class-ref in RevMobAds(RevMobDeviceInfo.o)   "_OBJC_CLASS_$_AVURLAsset", referenced from:
      objc-class-ref in RevMobAds(RevMobFullscreen.o)   "_OBJC_CLASS_$_CLBeaconRegion", referenced from:
      objc-class-ref in RevMobAds(RevMobBeaconManager.o)   "_OBJC_CLASS_$_CLLocationManager", referenced from:
      objc-class-ref in RevMobAds(RevMobDeviceInfo.o)
      objc-class-ref in RevMobAds(RevMobBeaconManager.o)   "_kCLDistanceFilterNone", referenced from:
      -[RevMobDeviceInfo getUserLocation] in RevMobAds(RevMobDeviceInfo.o)   "_kCLLocationAccuracyBest",
referenced from:
      -[RevMobDeviceInfo getUserLocation] in RevMobAds(RevMobDeviceInfo.o) ld: symbol(s) not found for architecture
x86_64 clang: error: linker command failed with exit code 1 (use -v
to see invocation)

非常感谢任何帮助。我不会再讨论视频广告了,我只是想让我的项目恢复原状,没有任何错误!谢谢大家!

2 个答案:

答案 0 :(得分:6)

之前我遇到过同样的问题,尝试将AVFoundation和CoreLocation框架添加到您的项目中。

答案 1 :(得分:0)

如果您将CoreLocation添加到您的应用程序,但是将其复制而不是执行相对框架链接,也会发生这种情况...所以请检查以确保您没有错误地将CoreLocation.framework复制到您的应用程序中。