在 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 库的主要内容,如果未能解决你的问题,请参考以下文章