答案 0 :(得分:17)
通过将以下pods install
脚本添加到post_install
的末尾,您可以在每次运行Podfile
时自动启用此功能。
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
if config.name == 'Release'
config.build_settings['SWIFT_COMPILATION_MODE'] = 'wholemodule'
end
end
end
在旧版Xcode中,您需要:
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
if config.name == 'Release'
config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] = '-Owholemodule'
else
config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] = '-Onone'
end
end
end
答案 1 :(得分:10)
使用整个模块优化允许编译器查看所有 模块中的源文件。这使编译速度变慢但允许编译 优化通用功能,即使它们位于不同的源中 文件。您可以在执行时间的最终测试运行中看到这一点 现在对于本地和外部函数定义都是相同的。
总之,如果您不介意额外的编译时间,请尝试转动 关于发布版本的整体模块优化。
此source应该可以让您更深入地了解整体模块优化
下次运行pod install
时,Xcode所做的对Pods项目的任何更改都会被吹走,因此必须在Cocoapods中进行更新以消除此警告。有关此here的讨论。
短期解决方案是将post_install
脚本添加为Mike suggested。