所有编译器和链接器标志都可以在项目或目标的“构建设置”中找到(目标可以覆盖其项目的设置)。要到达那里,请选择项目文件,然后选择您当前的目标,然后转到“构建设置”。选择顶部的“全部”和“级别”以显示所有可用选项及其设置位置(项目或目标 - 最左侧获胜)。
这些选项是分组的,例如,链接器选项和编译器选项,其中大部分是指标志。Xcode 显示一个描述性的名称而不是完整的标志名称。要查看后者,请选择感兴趣的行并在右侧面板(“实用程序”面板)中选择“快速帮助检查器”。您似乎要寻找的标志在 Xcode 中称为“优化级别”。
您可以设置每个选项的值,Xcode 可能会在原始值旁边显示一些元信息,例如,“最快,最小”用于-Os
,或“无”用于-O0
。您可以独立设置每个配置的所有选项(默认情况下,Release 和 Debug)。实际使用哪种配置取决于您的构建操作。如果您构建并运行,则默认使用 Debug。如果您归档应用程序,则默认使用 Release。但是,您可以通过编辑方案来更改其中的大部分内容。
更新:
要了解发布和调试配置之间的差异,请查看给定目标的“构建设置”。如果选项的值在两种配置(或您可能拥有的任何其他配置)中不同,则选项名称前面有一个箭头,表示不同的值。例如,采用“仅构建活动架构”设置。在调试模式下,它假定您为特定的测试设备构建,因此也不需要包含为其他平台生成的代码。但是,如果您构建应用程序以进行分发,您希望构建一个包含所有目标设备/硬件架构的代码的应用程序。
其他要查看的选项: - 调试信息格式:调试信息(崩溃报告)的存储方式。在 Release 模式下,设置为“DWARF with dSym”,这意味着您的崩溃报告是加密的,因此其他人无法从中获取有意义的信息(符号名称)。
- 在复制期间去除调试符号
-优化级别,如上所述
-预处理器宏:这允许您使您的代码(静态)依赖于构建配置,例如,仅在调试模式下登录
Xcode 在上述“快速帮助检查器”中提供了有关所有这些选项的更多(并且可能更准确)信息,只需选择任何选项即可。
根据我的经验,尽管进行了优化,但发布版本通常更快(即,它们构建得更快)并且尺寸肯定更小。