2

系统信息:Xcode 7.0.1 w/iOS 9

我遇到的问题是:将 GoogleMaps pod (1.10.3) 添加到我的 podfile 后,应用程序在 Xcode 中为 iOS 模拟器构建,但不是为设备构建。

发生的错误如下:

ld: '/Users/<username>/Projects/Arsenal/LitterBug/Pods/GoogleMaps/Frameworks/GoogleMaps.framework/GoogleMaps(GMSCachedTile.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)

我发现的每篇文章都提到ENABLE_BITCODE在 Pods 项目中将 pod 目标的标志设置为“否”。如果 GoogleMaps 目标是在 Pods 项目中创建的,那么这将是一个可行的选择,只要允许开发继续直到 Google 更新 SDK。

我当前的 podfile 看起来像:

source 'https://github.com/CocoaPods/Specs.git'

use_frameworks!

target 'AppName' do
    pod "Parse"
    pod "SwiftOverlays"
    pod "FBSDKCoreKit"
    pod "GoogleMaps"
    pod "FBSDKLoginKit"
    pod "FBSDKShareKit"

end

target 'AppNameTests' do
end

当我运行pod install --verboseorpod update --verbose时,“安装目标”阶段似乎没有在 Pods 项目中安装 GoogleMaps 目标。通过查看工作区中的项目确实可以确认这一点。

在其他 pod 目标旁边创建了一个目标,称为“Pods-appname”。我已经尝试禁用此目标的位码,但它并没有解决问题。

如果其他人遇到过这个问题,请告诉我。我收到的原始错误目前正在作为问题进行跟踪,可以在此处查看: GoogleMaps issue 8219

当前的解决方法需要在工作区的 Pods 项目中存在一个 GoogleMaps 目标。

4

2 回答 2

0

我通过在 Build Settings 中的 Setup Enable Bitcode = NO解决了这个问题。

项目>构建设置>所有>构建选项>启用位码=否

项目>构建设置>所有>构建选项>启用位码=否

于 2015-10-24T13:34:40.737 回答
0

只需选择PodsPROJECT设置Use Legacy Swift Language VersionYES
在此处输入图像描述

于 2016-11-14T06:56:14.100 回答