Xcode 10如何使用带有obfuscator-llvm插件的新构建系统

问题描述 投票:2回答:2

我按照integration-into-xcode的教程,它适用于Xcode 9,在Xcode 10中,选择文件 - >项目/工作区设置,有一个Build System选项,新的构建系统被选为默认设置,使用此默认设置,clang路径为总是设置为/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang,来自Obfuscator.xcspec文件的ExecPath的值不受尊重,我怎样才能使它适用于新的构建系统?

ios xcode llvm llvm-clang xcode10
2个回答
0
投票

似乎XCode10不再处理ExecPath键了。

一种可能的解决方案是覆盖CCLDAR以获得类似的结果。这可以通过两种不同的方式完成:

  • 在插件中,例如通过创建名为CC的新编译器选项。
  • 作为构建设置窗口或项目/目标中的“用户定义设置”。只需创建一个名为CC的设置,并将其设置为您在ExecPath键中放置的值。

两种解决方案都依赖于相同的机制。如果已定义,则使用这些变量代替所选的工具链。默认情况下这些是空的。但是,根据我的测试,这在以前版本的XCode中有点不同,其中变量首先由XCode解析(我相信使用whereis)。例如定义CC=echo,XCode9用/bin/echo编译,而XCode10用echo编译。如果XCode9无法找到可执行文件,则可能导致索引任务冻结。


-1
投票

从Xcode7-ish开始,您可以直接使用工具链

© www.soinside.com 2019 - 2024. All rights reserved.