我正在搞乱套接字,我想在我的mac上使用SCTP协议进行测试。
但是,当我尝试包含文件netinet/sctp.h
时,编译器会给我一个“找不到文件”错误。
所以我做了一些挖掘,果然,Mac OSX Lion上没有netinet/sctp.h
的包含文件。为什么这样,当我可以设置一个IPPROTO_SCTP
的套接字时,它构建得很好?
总而言之,我有两个问题:
答案 0 :(得分:4)
狮子IPPROTO_SCTP
在netinet/in.h
中定义 - 这就是为什么它可以正常工作,因为您可能直接或间接地包含netinet/in.h
。但是,它仅出现在Lion中,而不是任何早期的OS X版本中。 (请注意,netinet/sctp.h
不是POSIX的一部分,我不认为它是可移植的)
答案 1 :(得分:0)
看起来你可以做到
brew install libusrsctp
您将在此处看到已安装的标头,尽管它可能是具有不同名称的不同实现:
cat /usr/local/Cellar/libusrsctp/0.9.5.0/include/usrsctp.h