我正在开发几个静态的Phone/iPad库。我需要建议关于如何最佳打包这些库的问题。我的目标是使其他项目能够轻松使用这些库,并以最小的问题将正确的库包含到构建中。
为了让问题更有趣,我当前构建每个库的4个版本,如下所示:
- armv6/armv7发布版(设备) - i386发布版(模拟器) - armv6/armv7调试版(设备) - i386调试版(模拟器)
发布版和调试版之间的区别在于,调试版包含大量NSLog(...)代码,这使人们可以看到内部的情况以帮助调试。
目前,当我构建整个项目时,我将库分成两个目录,如下所示:
为了让问题更有趣,我当前构建每个库的4个版本,如下所示:
- armv6/armv7发布版(设备) - i386发布版(模拟器) - armv6/armv7调试版(设备) - i386调试版(模拟器)
发布版和调试版之间的区别在于,调试版包含大量NSLog(...)代码,这使人们可以看到内部的情况以帮助调试。
目前,当我构建整个项目时,我将库分成两个目录,如下所示:
release
lib-device.a
lib-simulator.a
debug
lib-device.a
lib-simulator.a
这个方法可以用,但是当它被应用到项目中时,两个路径都会被添加到库搜索路径中,而且在不同的目标之间切换会很麻烦。或者我最终会得到两个目标。
我考虑的另一种选择是像这样更改目录:
release
device
lib.a
simulator
lib.a
debug
device
lib.a
simulator
lib.a
在使用XCode时,似乎所有的XCode都使用项目的库引用来获取库文件的名称,然后在库路径中查找该名称。因此,通过将库路径参数化为当前构建类型和目标设备,我可以有效地自动切换。
你们认为呢?有更好的方法吗?
ciao Derek