Xcode:如何正确构建静态库项目?

对于Xcode专业人员来说,这个问题很容易,但对于MonoTouch开发人员来说,这似乎无法解决。 :-)

我使用的是Xcode 4.5,我想要将iOS 5.1及更高版本和iOS Simulator 5.1及更高版本作为目标。

我在这里有一个库项目,它带有一个名为“DemoLib”的预编译二进制文件(没有扩展名,大小为11MB)。 该库是模拟器和iOS 5.1+的胖库。 我可以毫无问题地使用该库。 但是,如果我自己尝试构建库,则最终会生成一个“DemoLib.a”文件(注意扩展名和30MB的大小)。 我怎样才能获得相同的构建结果? 与没有扩展名的文件相比,.a文件是什么? 我试图在Xcode中构建“运行”和“归档”项目。 两者都导致相同的30MB .a文件。 我期待在Xcode中可以选择“DEBUG”或“RELEASE”构建的下拉列表,后者可以创建更小的库。


当然,如果没有看到框架的项目文件,我永远无法分辨。 话虽如此,这里有一个很好的指导来创建和编译iOS框架:https://github.com/jverkoey/iOS-Framework

使用上述指南,您应该能够重新创建您的框架项目,添加您拥有的文件并正确编译它。

希望这可以帮助! :)


它是否带有Makefile? 创建一个新目标,将目标的构建设置设置为Makefile中的内容,然后将项目设置为依赖于新目标。

带有.a​​的文件是一个静态库,这意味着它不依赖于外部,它需要的所有代码都在内部编译。 我认为没有任何扩展通常意味着动态库,这意味着它将取决于系统中存在的一些依赖关系来链接。 也许这就是为什么.a更大。 我认为Xcode默认会建立静态,因为iOS不允许使用动态库。

在你的计划中建立的内容的下拉列表。 Command + shift + <查看您的方案。 在该方案中,您可以编辑每种建筑方法将使用的环境。

链接地址: http://www.djcxy.com/p/11505.html

上一篇: Xcode: how to build a static library project correctly?

下一篇: Does the Arguments object leak?