[英]Disabling some files in Xcode project from compilation
我通过复制现有文件夹在Xcode中开始了一个新项目,因为我的新应用程序将与旧版本具有许多共同功能。
问题是新应用程序不会使用我在旧应用程序中使用的框架。 当我删除框架时,包括该框架在内的所有文件都会引发错误。
基本上我想在许多文件上禁用所有语法检查,依赖性检查等。 我希望Xcode忽略这些文件,尽管它们在项目树中。 稍后当我修改它们时,我将再次手动启用它们。 通过这种方式,我可以编译和测试我的小错误更改,而无需修复它在“未修改”文件中导致的所有错误,无论如何我将在未来修复。
我可以从项目树中删除它们,然后在我的工作完成后逐个添加它们,但我不想这样做,因为我的项目树可能搞砸了,应该有另一种方法来实现这一点。
我尝试从所有目标成员身份中删除这些文件,但它没有帮助。
如果需要删除大量文件,可以创建用户定义的构建设置,该设置应称为EXCLUDED_SOURCE_FILE_NAMES。 并添加文件名或模式。
在我的情况下,我选择了我想省略一些文件的目标,编辑器 - >添加构建设置 - >添加用户定义的设置(起初这是灰色的。我选择了项目文件(就在TARGETS之上)然后重新选择了目标文件并且能够创建用户定义的设置 - >将其命名为EXCLUDED_SOURCE_FILE_NAMES - >值类似于PREFIX *
当然,您可以为所有目标创建整个项目的用户定义设置。
示例如何:
原始答案: http : //lists.apple.com/archives/xcode-users/2009/Jun/msg00153.html
在Xcode 9中,我不确定旧版本,请访问:
构建设置 - >构建选项 - >排除的源文件名
添加要排除的所有文件名。 你甚至可以做通配符匹配。
Bellow是我如何排除所有以dev-
开头并以.cc
结尾的文件的示例,除了为Simulator构建的Debug方案之外的所有方案。 所有Debug Simulator构建排除以release-
开头并以.cc
结尾的文件
希望这可以帮助!!
UPDATE
我在框架方面遇到了类似的问题,您也可以将框架排除在嵌入到您的应用程序之外!
我的问题是我有2个框架,一个是为模拟器构建的,另一个是为ARM构建的。 iTunes Connect抱怨我,包括应用程序的模拟器。
如果您有许多框架,这也有助于减少应用程序的大小。
作为脏黑客你可以尝试排除不是文件,但是它的代码是使用#ifdef NotCompile + #endif
因为它是在C \\ C ++中用.h完成的,在YOURPROJECT-prefix.pch中添加\\ #define NotCompile
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.