Xcode的"TOOLCHAINS"设置在哪里?

J. *_*coe 11 xcode swift

我将我的项目从Swift 2.2升级到2.3(Xcode 7到8),并在一台Mac上提交了所有内容.当我从其他Mac上的git中取出并构建时,我得到:

Warning: target specifies SWIFT_VERSION = '2.3', but it is overridden by TOOLCHAINS = 'com.apple.dt.toolchain.XcodeDefault'
Run Code Online (Sandbox Code Playgroud)

我在任何文件中都找不到任何名为"TOOLCHAINS"的东西.这个警告意味着什么?

小智 8

我有同样的警告,我可以通过清理构建文件夹解决问题(alt + shift + cmd + K)


Mob*_*Vet 6

工具链没有像之前的版本那样被明确调用。但是,它仍然存在于Xcode Preferences菜单的Locations -> Command Line Tools部分

选择Xcode 8为我解决了这个问题。

在此处输入图片说明


You*_*jen 6

我看到你通过升级到Swift 3.0解决了这个问题.

我遇到了同样的问题,并在此进行了一些研究.在Xcode中构建时,请确保将"Project> Build Settings> Use Legacy Swift Language Version"设置为 "Yes"

对于那些使用xcrunxcodebuild工具的人,我设法使用额外的选项' toolchain ' 来解决它

xcrun --toolchain "com.apple.dt.toolchain.Swift_2_3"
xcodebuild -toolchain "com.apple.dt.toolchain.Swift_2_3"
Run Code Online (Sandbox Code Playgroud)

标识符"com.apple.dt.toolchain.Swift_2_3"可在以下位置找到:

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/Swift_2.3.xctoolchain/ToolchainInfo.plist
Run Code Online (Sandbox Code Playgroud)

希望这对那些在Swift 2.3中开发的人有所帮助.

资料来源:https://marc.ttias.be/swift-users/2016-08/msg00188.php


And*_*uev 5

如果 Xcode 菜单下没有“Toolchain”选项,则需要先下载并安装快照或版本。


小智 1

工具链在 Xcode 菜单下设置,然后是工具链。它应该设置为 Xcode 8。 Xcode 8 中还有一个名为“使用旧版 swift 版本”的构建设置,应设置为 YES,以便您使用 Swift 2.3 而不是 3。

  • 在 Xcode 8.0 (8A218a) 中,Xcode 菜单下没有“工具链”。 (3认同)
  • @J.Cocoe 是 Xcode -> 首选项 -> 位置 -> 命令行工具吗? (2认同)