1

当使用 swift 包管理器(特别是https://github.com/PerfectlySoft/PerfectTemplate.git)生成具有可执行文件(main.swift)的项目时,我失去了在使用 Xcode 8.1 及更高版本时访问本地调试符号的能力(见下图1)。这是否特定于 PerfectTemplate 和/或是否有我可以实施的修复?

我已经在 Xcode 8.1 和 8.2、Swift 3.0.1 和 3.0.2 PREVIEW 1 上进行了尝试。此外,我的优化级别设置为无(见下图 2)。这在 Xcode 8.1 之前不是问题,也就是说,在本地符号表下方显示的同一断点处确实填充了。此外,当我直接为完美的模板可执行文件 lldb 快速构建时,本地符号填充为 3.0.2 而不是为 3.0.1(见下图,图 3)。最后,对于所有其他不可执行的 Xcode 项目,SPM 或其他,Xcode 版本和 Swift 版本都可以正确调试并生成本地符号表。

图 1(缺少本地符号): 图 2(构建优化级别): 图 3(3.0.2 的成功 lldb):

4

1 回答 1

0

几个月前我遇到了同样的问题,但我不确定我做了什么来解决它。

首先检查您的 Xcode 和 swift 启用版本:Xcode > Preferences > Locations > Command Line Tools。

命令行设置

然后尝试一个新版本(最后一个来源)

再次克隆项目:

git clone https://github.com/PerfectlySoft/PerfectTemplate.git

构建它

swift package generate-xcodeproj
open PerfectTemplate.xcodeproj

运行它并检查符号。

它适用于我的 Xcode 8.2.1,swift 版本 3.0.2。

我希望它对你有帮助。

于 2017-02-15T20:17:16.800 回答