Xcode 4.2链接错误:libz问题?

And*_*ith 7 xcode ios

将项目移动到Xcode 4.2,我得到了许多Mach-O链接器未解决的错误,例如_crc32,_expf和_UnwindSjLj_Register,这些项目在Xcode 4.0.3中编译和链接很好.

我怀疑这可能是一个libz问题,因为我之前的项目链接了libz.1.2.3.dylib.我删除了该引用,并添加了libz.1.2.5.dylib,它位于我的/Platforms/iPhoneOS.platform/DeviceSupport/5.0(9A5259f)/ Symbols 1/usr/lib文件夹中.

无论是否包含libz.1.2.5.dylib,我都得到相同的39个未解析的引用,所以它似乎非常可疑.

epa*_*tel 30

链接libz.dylib,但通过Build Phases选项卡添加它.

项目>>目标>>构建阶段>>链接二进制与库

按下列表下的+并选择libz.dylib然后它将添加lib,以便它可以在SDK更新之间工作.

  • @Hyperbole如果你检查你会注意到SDK中的`libz.dylib`实际上是一个文件链接到其中一个版本化的dylib(通常是最新的).但是只有一个标题版本,它将与最新版本具有相同的版本.所以,如果你今天尝试链接(在xcode中)1.2.3,并更新SDK,包括libz到1.3.0以及更新的头文件,你仍然会链接旧版本(但如果你使用了libz.dylib你会像标题一样再次链接)......好吧,类似的东西,但每个lib都有自己的要求 (2认同)