我正在构建一个 iOS 项目,其中包含一个我希望从产品的 .dSYM DWARF 文件中排除其符号的子项目。
情况是子项目(一个静态库)包含有价值的专有代码,我不希望攻击者能够符号化,即使他们有用于重新符号化整个应用程序崩溃报告的 dSYM 文件。该子项目涵盖了一个非常具体的领域,并且经过了独立测试,因此我不担心无法在该代码中重新符号化堆栈跟踪。但是,我确实需要能够为应用程序的其余部分重新符号化崩溃报告,所以我需要一个 dSYM(因为与应用程序一起分发符号不是一种选择)。
我已经设法确保从二进制文件中删除所有相关符号,并设置 GCC_GENERATE_DEBUGGING_SYMBOLS=NO 从 dSYM 中删除了很多内容,但我仍然在 dSYM 文件中看到类私有 C++ 方法名称。作为参考,我正在使用clang。
如何在不影响该子项目符号的情况下为我的应用程序生成 dSYM?