如何使用多个Swift编译器构建封闭源Swift框架?

时间:2019-02-07 21:52:40

标签: ios swift xcode cocoapods ios-frameworks

这是我的问题:

  • 包含Swift 4.2代码的封闭源.framework
  • n个要正式支持的Swift版本
  • 项目结构:
    • Foo.framework(包含Swift 4.x)
      • libBar.a(包含Swift 4.x)
        • libBaz.a(包含Swift 4.x)

我从源代码构建libBar和libBaz的库,因此我可以进行修改。

多次构建Foo.framework项目(每次使用不同的Swift编译器)的最直接方法是什么?由于Swift框架仅在使用与其构建时使用的相同编译器进行编译时才兼容,因此我决定支持的每个Swift版本都需要一个.framework文件。

乍看之下,我考虑过grep插入所有SWIFT_LANGUAGE_VERSION字符串并将其更改为目标swift版本,然后xcode-select选择包含以下内容的正确Xcode版本:匹配的Swift编译器版本。

我已经研究了cocoapods,但不幸的是,根据我的经验,他们的cocoapods-packager尚不支持打包Swift框架。

事后看来,我认为使用Swift 4编写代码可能更合适,因为它与Swift 4.2编译器一直都是源兼容的,所以我可能需要在这里做这件事。< / p>

0 个答案:

没有答案