向 Swift 包管理器提供配置文件

Provide configuration file to Swift Package Manager

我正在尝试结合 swiftpm 和 .xcconfig 文件。

我在我的 Package.swift 文件旁边用两行创建了 Config.xcconfig 文件:

LIBRARY_SEARCH_PATHS = $(inherited) $(SRCROOT)/../3rdparty/mylib/.build/
OTHER_LDFLAGS = $(inherited) -lmylibRelease

但我仍然有 120 个链接错误,我的猜测是 swift build 没有看到我的配置文件。

我该怎么办?

SwiftPM support 自定义 Xcode 配置。调用 generate-xcodeproj 命令时必须指定自定义配置文件的路径。
要查看有关 generate-xcodeproj 运行 swift package generate-xcodeproj -h

的更多详细信息

例子

swift package generate-xcodeproj --xcconfig-overrides Config.xcconfig

Xcode 11.3 现在支持具有自定义 Xcode 配置的 SPM。

指定 header 搜索路径和链接器标志的适当方法是使用 Package.swift 结构值。它们正是为此目的而提供的。

对于 header 个搜索路径,使用 CSetting

对于链接器标志,使用 LinkerSetting

Package.swift 的完整规范可在 PackageDescription API 中找到。