28

是否可以更改用于构建框架的 Carthage Swift 版本?

我正在尝试将我的项目迁移到 swift 3(在 Xcode 8 beta 上),而第三方库是唯一阻止我的项目编译的东西。在使用 swift 3 的特定分支时,Carthage 会抛出有关新 Swift 语法的错误。

任何帮助将不胜感激!

4

2 回答 2

55

Carthage 使用命令行工具xcodebuild来构建框架。命令行系统使用的Xcode版本由工具选择的值决定xcode-select

Usage: xcode-select [options]

Print or change the path to the active developer directory. This directory
controls which tools are used for the Xcode command line tools (for example, 
xcodebuild) as well as the BSD development commands (such as cc and make).

Options:
  -h, --help                  print this help message and exit
  -p, --print-path            print the path of the active developer directory
  -s <path>, --switch <path>  set the path for the active developer directory
  --install                   open a dialog for installation of the command line developer tools
  -v, --version               print the xcode-select version
  -r, --reset                 reset to the default command line tools path

它需要指向 Developer SDK 目录,因此您可以使用--print-path它来检查它当前指向的位置。

xcode-select --print-path
/Applications/Xcode.app/Contents/Developer

然后改变它只是运行sudo xcode-select --switch <path-to-beta-xcode>/Contents/Developer

于 2016-06-16T20:42:12.660 回答
0

Carthage 的 GitHub 上有一个关于 XCode 8 和损坏兼容性的错误报告。您可能想在他们的回购中关注该问题的主题:

https://github.com/Carthage/Carthage/issues/1440

Carthage 的 repo 中另一个相关报告的问题是:https ://github.com/Carthage/Carthage/issues/1445

于 2016-08-22T18:47:50.557 回答