尝试在 iOS 项目中安装 FontAwesomeSwift 时 Carthage 失败
Carthage fails when trying to install FontAwesomeSwift in iOS project
我正在尝试在我的 Xcode 项目 (Swift) 中安装 FontAwesome.Swift,所以我使用以下行创建了一个 Cartfile
github "thii/FontAwesome.swift" >= 0.4.1
如此处所述。那我运行
迦太基更新,这发生了:
==> carthage update
*** Fetching FontAwesome.swift
*** Checking out FontAwesome.swift at "0.6.0"
*** xcodebuild output can be found in /var/folders/fr/sn4l2f393_v_ytcwkb0lx7_40000gp/T/carthage-xcodebuild.4QnCto.log
*** Building scheme "FontAwesome" in FontAwesome.xcodeproj
** BUILD FAILED **
The following build commands failed:
CompileSwift normal x86_64 <path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift
CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler
(2 failures)
<path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift:72:61: error: 'String.Index' does not have a member named 'advancedBy'
A shell task failed with exit code 65:
** BUILD FAILED **
The following build commands failed:
CompileSwift normal x86_64 <path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift
CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler
(2 failures)
我从错误信息中推断:
'String.Index' does not have a member named 'advancedBy'
您还在使用 Xcode 6.x? advancedBy
API 仅适用于 Swift 2.0,它随 Xcode 7.
一起提供
所以,你有两个选择:
- 将您的项目升级到 Xcode 7 / Swift 2.0
- 编辑您项目的 Cartfile,以便它获取与您的 Xcode 版本兼容的 FontAwesome.swift 版本。似乎 FontAwesome.swift 已迁移到 Swift 2.0 版本 0.6,因此指定版本 < 0.6(而不是 >= 0.4.1)可能会成功。
如果您同时安装了 Xcode 的两个版本,Carthage 可能仍会使用 Xcode 6.x 中的命令行工具,而不是较新的工具。您可以在终端中使用 xcodeselect
命令修复此问题,但也可以在 Xcode 首选项(位置选项卡)中切换到所需的工具版本。
我正在尝试在我的 Xcode 项目 (Swift) 中安装 FontAwesome.Swift,所以我使用以下行创建了一个 Cartfile
github "thii/FontAwesome.swift" >= 0.4.1
如此处所述。那我运行
迦太基更新,这发生了:
==> carthage update
*** Fetching FontAwesome.swift
*** Checking out FontAwesome.swift at "0.6.0"
*** xcodebuild output can be found in /var/folders/fr/sn4l2f393_v_ytcwkb0lx7_40000gp/T/carthage-xcodebuild.4QnCto.log
*** Building scheme "FontAwesome" in FontAwesome.xcodeproj
** BUILD FAILED **
The following build commands failed:
CompileSwift normal x86_64 <path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift
CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler
(2 failures)
<path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift:72:61: error: 'String.Index' does not have a member named 'advancedBy'
A shell task failed with exit code 65:
** BUILD FAILED **
The following build commands failed:
CompileSwift normal x86_64 <path_to_project>/<ProjectName>/Carthage/Checkouts/FontAwesome.swift/FontAwesome/FontAwesome.swift
CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler
(2 failures)
我从错误信息中推断:
'String.Index' does not have a member named 'advancedBy'
您还在使用 Xcode 6.x? advancedBy
API 仅适用于 Swift 2.0,它随 Xcode 7.
所以,你有两个选择:
- 将您的项目升级到 Xcode 7 / Swift 2.0
- 编辑您项目的 Cartfile,以便它获取与您的 Xcode 版本兼容的 FontAwesome.swift 版本。似乎 FontAwesome.swift 已迁移到 Swift 2.0 版本 0.6,因此指定版本 < 0.6(而不是 >= 0.4.1)可能会成功。
如果您同时安装了 Xcode 的两个版本,Carthage 可能仍会使用 Xcode 6.x 中的命令行工具,而不是较新的工具。您可以在终端中使用 xcodeselect
命令修复此问题,但也可以在 Xcode 首选项(位置选项卡)中切换到所需的工具版本。