iOS6没有libxml2.2.7.3.dylib库,有替代品吗?

5

我用xcode4.2做了一个项目,但当我用xcode4.5和iOS 6 SDK打开它时,会出现错误255,原因似乎是缺少libxml2.2.7.3.dylib库。

我的选择有哪些?是否有其他替代方案可用?

谢谢。

2个回答

21

Xcode 4.5,或更确切地说是iOS6 SDK(因为可用库取决于SDK而不是Xcode版本),仍然具有libxml2.2.dylib

很可能它并不是版本2.2.7.3,而是嵌入在SDK中的更新的2.2.x.y版本。

通常不应该将应用程序与特定版本的库进行链接,而是应该使用通用版本,例如 libxml2.dyliblibxml2.2.dylib

一般来说,库遵守语义化版本控制原则,意味着:

  • 当API与以前的主要版本不兼容时,它们的主要版本才会更改。
  • 只有在API中引入新方法但仍与先前的API兼容时,次要版本才会更改。
  • 补丁版本表示已修复一些错误,但API没有更改。

因此,如果libxml遵循这种语义化版本控制(我认为像几乎每个标准库一样),则libxml的每个2.2.x.y版本都与任何其他2.2.x.y版本兼容,并将继续与您的程序一起使用。如果出现一个假设的新版本libxml2.2.x.z,它将仅修复错误,但不会在其API中引入任何更改。当一个libxml2.3.x.y版本出现时,它仍将向后兼容2.12.2(只是添加新功能而不删除现有功能)。

因此,您可以安全地将应用程序与通用库版本libxml2.dylib链接,它会自动指向当前SDK中最新的2.x.y.z版本。或者链接到libxml2.2.dylib,它将指向最新的2.2.x.y版本(这些都是符号链接,指向最新版本,就像所有类UNIX操作系统一样)。

0

我认为iOS6的SDK只包含了不同版本的libxml


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接