Change Carthage Swift version

2019-01-24 02:09发布

Is it possible to change Carthage Swift version used to build the frameworks?

I'm trying to migrate my project to swift 3 (on Xcode 8 beta), and the third party libraries are the only thing that stops my project from compiling. While using specific branches for swift 3, Carthage throws errors about the new Swift syntax.

Any help will be appreciated!

2条回答
你好瞎i
2楼-- · 2019-01-24 02:37

Carthage uses the command line tool xcodebuild to build the frameworks. The version of Xcode used by the command line system is determined by the value selected by the tool 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

It needs to point to the Developer SDK directory, so you can use --print-path to check where it's currently pointing.

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

Then to change it just run sudo xcode-select --switch <path-to-beta-xcode>/Contents/Developer

查看更多
再贱就再见
3楼-- · 2019-01-24 02:46

There is a bug report on Carthage's GitHub about XCode 8 and broken compatibility. You may want to follow that issue's thread on their repo:

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

Another related reported issue in Carthage's repo is: https://github.com/Carthage/Carthage/issues/1445

查看更多
登录 后发表回答