如何修复"是一个动态库,而不是添加到静态库"警告?

Kai*_*zay 7 xcode static-libraries cocos2d-iphone cocos2d-iphone-2.x

我刚刚升级到Xcode 5.1,突然间出现了一个新的警告:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool:file:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1. sdk/usr/lib/libz.dylib是一个动态库,未添加到静态库中

生成此警告的目标是cocos2d-iphone v2静态库(而不是使用cocos2d模板,我创建了一个静态库).要创建静态库,我所做的就是将cocos2d项目添加到我的工作区,让我的项目链接到cocos2d链接到的库,就是这样.在此更新之前,这一切都运行良好,但现在有一个警告.

我该如何解决 ?我不想搞乱cocos2d项目,因为有些项目我使用cocos2d模板而不是静态库.

Lea*_*s2D 11

静态库目标无法链接到dylib.以前这只是被忽略了.您需要从静态库目标中删除所述dylib,并在必要时将其添加到构建实际应用程序的每个目标.

使用库构建阶段查看链接二进制文件.知道cocos2d可能需要从cocos2d目标的Build Settings中删除其他链接器标志"-lz".

  • 你应该提到静态库根本没有链接,而`.a`文件是一个简单的目标文件存档,从方便而不是其他方面打包. (2认同)