2011-09-24 74 views
7

我发现了几个对XCode中构建设置的引用,名为EXCLUDED_SOURCE_FILE_NAMES - 下面的模式提示了它的工作方式。但我无法弄清楚如何在XCode(4.02)中使用这个选项。如何在XCode 4(iOS)中使用EXCLUDED_SOURCE_FILE_NAMES

“EXCLUDED_SOURCE_FILE_NAMES [SDK =的iPhoneOS *] [拱= *]” = ...

的目标是具有一个或多个源文件编译,当目标是模拟器,以及一组不同的源的当目标是iOS设备时编译文件。

我想我需要告诉xcode每个目标的文件列表。那么,我如何使用这个设置来实现呢? XCode在哪里?有没有关于如何做到这一点的文件?

我还需要用静态库做同样的事情。具体来说 - 我有一个静态lib,我想包括在我的项目中,但是lib只支持arm而不是i386,所以,当为模拟器构建时,我需要排除这个文件被链接!

可以这样做吗?

回答

9

基本上EXCLUDED_SOURCE_FILE_NAMES将刚刚从构建配置

如果你想从构建配置中删除静态库中删除这些文件,那么这是要走的路。

要实现这一点,只需转到目标的“Build Settings”,然后点击“Add Build Setting”按钮并为您的目标添加EXCLUDED_SOURCE_FILE_NAMES配置。

然后,您可以指定要排除的每个版本的配置,其文件名...

你的情况,因为你提不同的文件列表,那么你或许应该创建2套应用程序束,然后排除在EXCLUDED_SOURCE_FILE_NAMES

束所以,如果你创建了一个名为simulator.bundle包和一个名为release.bundle你会排除发行配置的simulator.bundle文件,并在模拟器配置release.bundle包...

+6

我还会补充一点,EXCLUDED_SOURCE_FILE_NAMES预计会有几个ems由空格分隔,而不是逗号。即“pattern1 * pattern2”是正确的,而“pattern1 *,pattern2 *”将不起作用。 –