首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于嵌入式Linux的非GPL C/C++ XMPP客户端库

用于嵌入式Linux的非GPL C/C++ XMPP客户端库
EN

Stack Overflow用户
提问于 2012-11-23 11:02:39
回答 2查看 4.1K关注 0票数 1

有没有人知道一个好的非GPL C/C++ XMPP客户端库,可以在ARM机器上运行嵌入式Linux?

我已经查看了txmpp,但最后一次更新似乎是在2年前。qxmpp似乎需要Qt,我不确定嵌入式Linux是否支持Qt。另外,AFAIK Qt是用于GUI的,所以我不确定为什么一个库需要它。我也查看了gloox,但它是GPL,而且似乎也有一年多的历史了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-23 11:24:12

用于嵌入式Linux的

非GPL C/C++ XMPP客户端库

libstrophe -在麻省理工学院/GPLv3下双许可。然而,我不确定它是否能在ARM上编译,尽管它应该是相当可移植的。

,所以我不确定为什么库需要它。

因为Qt提供了XML解析器和signal/slot框架。XMPP需要XML解析器,而signal/slot框架使您的工作更轻松。如果您尝试以OOP方式实现带有所有扩展的整个XMPP,那么您将需要类似于Qt的东西。如果您只需要发送一两个命令,那么简单的解决方案就可以了。

libstrophe是最简单的。您不会得到几十个表示不同xmpp概念(以及大量扩展)的包装器,但是您将能够发送所需/想要的命令。当然,您必须阅读XMPP规范。

建议:当涉及到C++时,没有很多好的xmpp库可用。我认为这是由以下原因造成的(个人观点):

在创建many protocol extensions

  • It库时,
  1. Too xmpp很容易分心。Xmpp包含相当多的可能的错误,并且具有OOP思想的程序员将非常想为所有东西创建一个类,这在这种情况下不能很好地工作,并且需要像Qt4这样的东西来使其工作properly.
  2. XMPP需要XML解析器。

因此,如果您的嵌入式平台能够处理python,那么尝试python可能是有意义的。对于python,有xmpppy。尽管我非常不喜欢python,但我认为在python中使用xmpppy比在C++中使用libstrophe更容易。这是因为xmpp需要大量的键值对列表,而python使用字典以更“自然”的方式表示这些结构。

票数 1
EN

Stack Overflow用户

发布于 2014-10-28 22:00:15

我也有同样的问题,所以我自己也做了。在BOOST许可下发布;http://deusexmachinae.se/dxmpp

它只支持核心功能+正确的身份验证(包括TLS和SCRAM-SHA-1)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13522606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档