在 xcode 6.4 中构建 IPA 文件时,找不到带有 xmpp 的 -lxml2 库

Posted

技术标签:

【中文标题】在 xcode 6.4 中构建 IPA 文件时,找不到带有 xmpp 的 -lxml2 库【英文标题】:Library not found for -lxml2 with xmpp while building IPA file in xcode 6.4 【发布时间】:2015-09-26 14:46:00 【问题描述】:

我正在用 xmpp 框架制作一个聊天应用程序。

我已经通过参考这个链接在我的项目中设置了 XMPPFramework:-

http://code.tutsplus.com/tutorials/building-a-jabber-client-for-ios-interface-setup--mobile-7188

当我构建 IPA 时,我收到如下错误: 找不到 -lxml2 的库。我也尝试更改用户搜索路径和标题路径,但仍然会产生相同的错误。

谁能建议我解决这个问题。 谢谢你的建议。

【问题讨论】:

【参考方案1】:

您确定已将 libxml2(.dylib 或 .tbd)添加到“将二进制文件与库链接”部分吗?不是红色的吗?

我也尝试更改用户搜索路径和标题路径

改成什么?对我来说,libxml2.dylib 存在于标准位置:/usr/lib => 无需更改任何内容。你那里也有吗?

【讨论】:

当我在看到 RED 时没有更改任何路径时,但现在我在我的项目中添加了 libxml2。它仍然会产生错误。 如果你避免直接回答问题,很难帮助你:) no libxml2 在“Link Binary with Libraries”中没有显示为红色 好的,很好,还有其他问题吗? :) 好吧,我再重复一遍: 1) 在您的“将二进制文件与库链接”部分(黑色)中是否有 libxml2.dylib 或 libxml2.tbd 或 libxml2.2.dylib 或 libxml2.2.tbd? 2) 到底是哪一个? 3) 这个文件(来自#2)真的存在于您的 /usr/lib 文件夹中吗? 4)您说您更改了“用户搜索路径”和“标题路径”。你把它们改成什么? 5)这些选项名称到底是什么?我在 Xcode 6 / 7 中没有找到任何这些。 1) 黑色的 libxml2。【参考方案2】:

你有两个选择来解决这个问题:

您可以在TARGET BUILD SETTINGS 中将标志-lxml2 添加到您的OTHER_LDFLAGS,并在您的HEADER_SEARCH_PATHS 中添加:$(SDKROOT)/usr/include/libxml2

或者您可以在XMPPFramework 周围使用包装器,女巫将为您处理所有编译问题。

您可以查看here。

【讨论】:

【参考方案3】:
    在链接框架和库中添加Security.frameWork 添加User Header Search Paths : $(SDKROOT)/usr/include/libxml2 使其成为recursive 添加Header Search Paths : $(SDKROOT)/usr/include/libxml2 使其成为non-recursive 搜索“其他链接器标志”并添加:-lxml2。 现在清理项目并为 IPA 构建 Screen shot

【讨论】:

以上是关于在 xcode 6.4 中构建 IPA 文件时,找不到带有 xmpp 的 -lxml2 库的主要内容,如果未能解决你的问题,请参考以下文章

如何在构建 IPA 时修复 Xcode 6.1 错误

使用 Xcode 构建 IPA 文件

使用 Xcode 11 构建项目时 IPA 处理失败

如何为 React Native 构建 .ipa?

如何处理Xcode上传IPA文件后无法在后台架构版本中显示的问题?

Xcode 3.2.5 无法生成 IPA