ios - CocoaPods iOS 框架链接 i386 文件

标签 ios swift xcode cocoapods linker-errors

我在尝试将框架链接到我的测试项目时遇到问题...

我确实了解 CocoaPods 的工作原理,并且我尝试从这些文件链接实际框架的原因超出了这个问题的范围。

在我的 CocoaPods“Podfile”中,我有以下内容。

# Uncomment this line to define a global platform for your project
platform :ios, '8.0'


target 'GasAPI' do
    platform :ios, '8.0'
    use_frameworks!

    pod "Alamofire"
    pod "SwiftyJSON"

    target 'GasAPITests' do
        inherit! :search_paths

        # Pods for testing

        pod "Alamofire"
        pod "SwiftyJSON"
    end
end

但是,每当我执行“pod install”时,如果我进入“Pods”项目的项目设置,“Base SDK”就会更改为“Latest OS X”。

Pods project with wrong architecture

我已确保所有“目标”都将“最新 iOS (iOS 9.3)”作为其基础 SDK。

但是,当我尝试将其中一个文件链接到我的测试项目时,我收到一个链接器错误,在我看来,它似乎正在寻找 OS X 库,而不是 iOS 库。

这是我收到的最新错误:

Ld /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator/GasApiTestProject2.app/GasApiTestProject2 normal i386
    cd /Users/brent/Dropbox/NJVC/API/GasApiTestProject2
    export IPHONEOS_DEPLOYMENT_TARGET=9.3
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk -L/Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator -F/Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator -filelist /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=9.3 -Xlinker -no_deduplicate -Xlinker -objc_abi_version -Xlinker 2 -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator -Xlinker -add_ast_path -Xlinker /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2.swiftmodule -framework GasAPI -framework Result -framework SwiftyJSON -framework Moya -framework Alamofire -framework ReachabilitySwift -framework SwiftyBeaver -framework SwiftyRSA -framework Quick -framework Nimble -Xlinker -dependency_info -Xlinker /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2_dependency_info.dat -o /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator/GasApiTestProject2.app/GasApiTestProject2

ld: framework not found Result
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我尝试删除所有 Pod 并重建并将它们重新添加到项目中,它似乎仍然想要默认为 OS X。

我在 OS X 10.11.6 上运行 Xcode v7.3.1 并使用 CocoaPods v1.0.1

我找到了很多关于如何链接 iOS 和 OS X 项目的资源,但这不是这里的问题。看来我的链接器正在寻找不应该的架构。

我需要做什么才能克服这个错误?

谢谢!

最佳答案

尝试单击产品,然后按住选项,您将看到 clean 变成 clean build 文件夹,然后单击它,然后运行项目。

关于ios - CocoaPods iOS 框架链接 i386 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39154865/

相关文章:

ios - 我们如何将我们在 dribbble 上看到的精彩动画实现到 ios 应用程序?

ios - TableView NSInternalInconsistencyException

objective-c - 检查 NSButton 是否在 drawRect 上关闭

ios - 如何在日历选择日期 Xcode 上添加文本

ios - 选择某些共享类型后如何获取UIActivityType

ios - setAttributedText 不适用于 UIButton?

ios - iOS Swift 中的异常管理问题

ios - SwiftData(SQLite 包装器)在 Swift 3.0 中损坏

Swift 如何在 paymentQueueRestoreCompletedTransactionsFinished 中显示警报?

swift - 在 Swift 上发起多个网络请求