我们有一个相当大的项目,其中包含 Objective-C 和 C++ 文件。所有的 C++ 文件都在构建期间使用,但只有其中一些文件曾经使用 Xcode 打开过,而且还有很多根本不应该打开。但是 Xcode 会将所有文件的信息添加到索引中,因此我们的 .xcindex 文件大小约为 40 GB。显然,这是非常不方便的。我的问题是:有没有办法为项目的某些部分禁用索引?对于某些源文件、文件组或整个子项目。我尝试将某些源的explicitFileType 设置为“已编译”。它会为它们禁用索引,但它们也不会编译。构建系统不知道如何处理它们(“警告:没有规则来处理文件”),即使它们列在“编译源”构建阶段。为这些源文件添加自定义规则也不起作用 - CompileC 命令运行,但它有“?” 而不是“c++”参数,所有 clang 命令行标志都丢失了。任何建议将不胜感激。
问问题
372 次
1 回答
1
这里有什么建议吗?
我对项目有类似的问题CocoaPods
。有大量的 pod 都在索引。这需要很长时间。我Xcode
每次都冻死了pod install
。自动完成功能也很糟糕。我想知道是否有一种解决方案可以防止索引所有 pod 的私有部分?
此致
CocoaPods 更新:
最后,我通过开发实用程序 Rugby解决了我的问题。在当前版本中,Rugby
可以缓存所有远程 Pod 依赖项并将其目标从 Pods 项目中删除。在 Xcode 之外构建目标时,我可以禁用索引并使用预构建框架。也许它可以帮助某人。
于 2020-12-01T14:17:47.547 回答