xcode不同的连接器/ cflags的设备与模拟器在同一目标?
答
在.xcconfig文件,你可以有
OTHER_CFLAGS[sdk=iphoneos*] = foobar
OTHER_CFLAGS[sdk=iphonesimulator*] = barfoo
任何构建设置可以是有条件的一些事情,例如用于SDK中的短名称。例如,设备SDK名称为iphoneos-4.0,而sim iphonehonesimulator-4.0。因此,上述设备为您提供了'foobar'作为CFLAG,以及sim'barfoo'。
要尽快开始使用xcconfigs:
- 新文件>其它>配置设置文件
- 打开项目或目标编辑器(CMD-ALT-E的目标之一)
- 选择设置要自定义(如CFLAGS),并用CMD-C
- 修改复制
- 粘贴在新xcconfig文件如上
- 在您的项目或目标编辑器的右下角,选择xcconfig文件为“Based On”。
请注意构建设置UI现在如何让您编辑条件...您可以使用左下角按钮创建新条件,但不会让您设置“iphoneos *”,例如,仅限特定版本。
注意(继承)的神奇$让你做一个继承的项目设置,但覆盖的只是一部分,像这样的设置:
OTHER_CFLAGS[sdk=iphoneos*] = $(inherited) foobar
OTHER_CFLAGS[sdk=iphonesimulator*] = $(inherited) barfoo
我不知道xcconfigs一个很好的资源,但这会让你无论如何开始:http://robnapier.net/blog/build-system-1-build-panel-360#more-360
哈我刚刚读到,thx!正是我需要的。 – drunknbass 2010-06-22 23:12:51
在我的下拉菜单中执行此操作后,我失去了为模拟器生成的选项:/知道一种可以让该选项恢复的方法吗? – drunknbass 2010-06-22 23:26:21
好的结果是xcode不喜欢在xcconfig文件中设置BASE_SDK。如果你完全从构建设置中删除它,下拉不会让你选择basedk编译的对象(模拟器或设备) – drunknbass 2010-06-23 03:49:35