gpt4 book ai didi

swift - 如何使用 Swift 2.3 和 3.0 编译模块?

转载 作者:搜寻专家 更新时间:2023-10-31 08:06:18 26 4
gpt4 key购买 nike

我更新到 Xcode 8 并转换为最新的 Swift 3.0 语法。我的项目中有一些 Cocoapods,其中一些在 Swift 2.3 上(例如,一些较旧的 pod 需要将 Alamofire 设置为 v3.5,它运行 Swift 2.3)。

我已将这些 Pod 设置为使用 Legacy Swift -> 是的,但是在构建时出现错误:

Module complied with Swift 2.3 cannot be imported in Swift 3.0: /Users/....XSDK/XSDK.framework/swiftmodule/x86_64.swiftmodule

我不使用迦太基(在其他问题中引用)。只有 Cocoapods。

我需要将我的项目转换为使用 Swift 2.3 吗?或者我可以在我的项目中使用 Swift 3.0 并仍然使用旧版 Cocoapods 吗?

最佳答案

不幸的是,由于 Swift 不是 ABI 稳定的,你不能像这样组合 pod。这样做的原因是所有 swift pod(和框架、dylib、.a、.o 等)在编译后都需要引用巨大的 swift 标准库。标准库依赖于语言级别,您不能在单个应用程序中包含多个 swift 标准库副本。

自 swift 3 发布以来已经过了好几个月。此时,您可能想要跳转到 3。如果您发现一个 pod 还没有更新到 swift 3,也许可以 fork 并更新它并提交 pr。作者会爱你的! :)

关于swift - 如何使用 Swift 2.3 和 3.0 编译模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39524300/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com