在为Ruby 1.9.1构建dnssd gem时缺少htons

时间:2009-02-15 17:54:25

标签: c ruby rubygems

我一直在尝试使用最新版本的DNSSD插件来使用Ruby 1.9.1,但遇到了一些问题。我已经概述了到目前为止我采取的步骤,也许这里有人能够弄清楚还有什么问题。

  1. 尝试安装当前版本,使用:sudo gem19 install dnssd无法找到Gem安装失败的引用htons。
  2. 检查htons()...没有 需要功能按钮

    1. 检查手册页中的htons()(根据我的理解,htons将字符串转换为网络字节顺序[big-endian],如果需要)

    2. 根据Mac OSX 10.5手册页添加了htons()#include的相关包含。

    3. 找不到ruby19 extconf.rb和htons(),ruby(1.8)成功。

    4. DNSSD v0.7.0 github mirror http://github.com/jqr/dnssd/tree/master

1 个答案:

答案 0 :(得分:0)

htons不转换字符串,它将短(16位)从主机字节顺序转换为网络字节顺序。

它可能(可能是)实现为宏。在我的系统(Debian Etch)上,它位于文件/usr/include/netinet/in.h中。它由libc6-dev包拥有,它是标准C库的开发部分。

不确定这是如何在OSX上组织的,但您应该验证是否已安装C开发库。