Unicode 我们应该在iOS上使用哪个libiconv?

Unicode 我们应该在iOS上使用哪个libiconv?,unicode,ios,iconv,Unicode,Ios,Iconv,当我在Xcode中“添加现有框架”时,我看到了三个版本的libiconv libiconv.dylib libiconv.2.dylib libiconv.2.4.0.dylib 这说明最新和最伟大的是1.13.1。我认为这和上面的数字不一样 有什么线索吗?通过查看/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.0.1/Symbols/usr/lib/文件夹,只有libiconv.2.dylib是真正的库。libiconv.dylib

当我在Xcode中“添加现有框架”时,我看到了三个版本的libiconv

  • libiconv.dylib
  • libiconv.2.dylib
  • libiconv.2.4.0.dylib
  • 这说明最新和最伟大的是1.13.1。我认为这和上面的数字不一样


    有什么线索吗?

    通过查看
    /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.0.1/Symbols/usr/lib/
    文件夹,只有libiconv.2.dylib是真正的库。libiconv.dylib和libiconv.2.4.0.dylib都是libiconv.2.dylib的别名(即,如果您愿意用UNIX术语思考的话,可以使用符号链接)

    因此,在这一刻,它将绝对不会影响你链接到的内容。链接到一个可以为您提供最可接受的通用性的链接。因此,如果您可以处理任何版本的API,请链接到libiconv.dylib,如果您需要与libiconv版本2配套的API,请链接到libiconv.2.dylib,如果您特别依赖于2.4.0中的功能,请链接到libiconv.2.4.0.dylib。我假设,按照UNIX中的工作方式,苹果可能会在将来根据兼容性要求更改其别名,或者实际提供多个版本的动态库。目前这一切都是学术性的


    从谷歌上我可以看出,libiconv-1.12构建为libiconv.2.4.0.dylib。我无法确定版本编号背后的基本原理或想法来源。

    谢谢!奇怪的版本编号,是的。文件版本控制与库版本控制无关。这只是确保二进制兼容性的一种方法。我相信这是自动工具的规则:。