升级到 cocoapods 1.0 后缺少所需的架构
missing required architecture after upgrading to cocoapods 1.0
我正在尝试将 Cocoapods 升级到 1.0 版,但新版本链接 DTCoreText
失败。
当我尝试 运行 模拟器上的项目时,我得到
ld: warning: ignoring file /[...]/libDTCoreText.a, missing required architecture x86_64 in file /[...]/libDTCoreText.a (2 slices)
当我尝试存档时,我得到
ld: warning: ignoring file /[...]/libDTCoreText.a, missing required architecture arm64 in file /[...]/libDTCoreText.a (2 slices)
在干净的项目中使用我的同一个 Podfile 一切正常!所以这一定是我的项目,但我不知道它可能是什么。
我用过
pod deintegrate
pod install
已从项目中清理并删除派生数据,但没有成功。
项目和 Pods 的架构设置为 "Standard architectures (armv7, arm64)"
我正在使用 Xcode 7.3,我的 Podfile 如下所示:
source 'https://github.com/CocoaPods/Specs.git'
project 'Classes/MEG.xcodeproj'
platform :ios, '8.0'
inhibit_all_warnings!
target 'myApp' do
pod 'Reachability', '~> 3.1'
pod 'DTCoreText', '~> 1.6'
pod 'Flurry-iOS-SDK/FlurrySDK', '7.1.0'
pod 'DCIntrospect-ARC'
pod 'AFNetworking', '~> 2.5'
pod 'AFNetworkActivityLogger', '~> 2.0'
pod 'SDWebImage', '~> 3.7'
pod 'SVProgressHUD', '~> 1.0'
pod 'CHTCollectionViewWaterfallLayout'
pod 'BDBOAuth1Manager', '~> 1.5.0'
pod 'FMDB', '~> 2.4'
pod 'Masonry', '~> 0.6'
pod 'RSKImageCropper', '~> 1.0'
pod 'AWSiOSSDKv2/SNS', '~> 2.0'
pod 'JSQMessagesViewController', '~> 6.0'
pod 'SKTagView', '~> 0.0'
pod 'PSTAlertController', '~> 1.2'
pod 'UITextView+Placeholder', '~> 1.1'
pod 'MWFeedParser', '~> 1.0'
pod 'tarkit', '~> 0.1'
pod 'XMPPFramework', '3.6.5'
pod 'XMLDictionary', '~> 1.4'
pod 'NewRelicAgent', '~> 5.6'
pod 'NHNetworkTime', '~> 1.6'
target 'myApp Tests' do
inherit! :search_paths
pod 'OCMock', '~> 3.2'
end
end
终于找到问题了。我的项目文件夹中有一个旧版本的 libDTCoreText.a
。
即使项目中的任何地方都没有引用此文件,cocoapods 仍会尝试 link 它。 Xcode 可能是为了在 cocoapods 库中搜索 libDTCoreText.a
,但首先在项目文件夹中找到它,因为它也列在库搜索路径中。
无论如何,删除文件解决了问题。
我正在尝试将 Cocoapods 升级到 1.0 版,但新版本链接 DTCoreText
失败。
当我尝试 运行 模拟器上的项目时,我得到
ld: warning: ignoring file /[...]/libDTCoreText.a, missing required architecture x86_64 in file /[...]/libDTCoreText.a (2 slices)
当我尝试存档时,我得到
ld: warning: ignoring file /[...]/libDTCoreText.a, missing required architecture arm64 in file /[...]/libDTCoreText.a (2 slices)
在干净的项目中使用我的同一个 Podfile 一切正常!所以这一定是我的项目,但我不知道它可能是什么。
我用过
pod deintegrate
pod install
已从项目中清理并删除派生数据,但没有成功。
项目和 Pods 的架构设置为 "Standard architectures (armv7, arm64)"
我正在使用 Xcode 7.3,我的 Podfile 如下所示:
source 'https://github.com/CocoaPods/Specs.git'
project 'Classes/MEG.xcodeproj'
platform :ios, '8.0'
inhibit_all_warnings!
target 'myApp' do
pod 'Reachability', '~> 3.1'
pod 'DTCoreText', '~> 1.6'
pod 'Flurry-iOS-SDK/FlurrySDK', '7.1.0'
pod 'DCIntrospect-ARC'
pod 'AFNetworking', '~> 2.5'
pod 'AFNetworkActivityLogger', '~> 2.0'
pod 'SDWebImage', '~> 3.7'
pod 'SVProgressHUD', '~> 1.0'
pod 'CHTCollectionViewWaterfallLayout'
pod 'BDBOAuth1Manager', '~> 1.5.0'
pod 'FMDB', '~> 2.4'
pod 'Masonry', '~> 0.6'
pod 'RSKImageCropper', '~> 1.0'
pod 'AWSiOSSDKv2/SNS', '~> 2.0'
pod 'JSQMessagesViewController', '~> 6.0'
pod 'SKTagView', '~> 0.0'
pod 'PSTAlertController', '~> 1.2'
pod 'UITextView+Placeholder', '~> 1.1'
pod 'MWFeedParser', '~> 1.0'
pod 'tarkit', '~> 0.1'
pod 'XMPPFramework', '3.6.5'
pod 'XMLDictionary', '~> 1.4'
pod 'NewRelicAgent', '~> 5.6'
pod 'NHNetworkTime', '~> 1.6'
target 'myApp Tests' do
inherit! :search_paths
pod 'OCMock', '~> 3.2'
end
end
终于找到问题了。我的项目文件夹中有一个旧版本的 libDTCoreText.a
。
即使项目中的任何地方都没有引用此文件,cocoapods 仍会尝试 link 它。 Xcode 可能是为了在 cocoapods 库中搜索 libDTCoreText.a
,但首先在项目文件夹中找到它,因为它也列在库搜索路径中。
无论如何,删除文件解决了问题。