SCTP отсутствует включаемый файл на OSX?
Я возился с сокетами, и я хотел проверить, используя протокол SCTP на моем Mac.
Тем не менее, когда я пытаюсь включить файл netinet/sctp.h
Компилятор выдает ошибку "Файл не найден".
Так что я покопался, и, конечно же, нет никакого файла для включения netinet/sctp.h
на Mac OSX Lion. Почему, когда я могу установить сокет с IPPROTO_SCTP
, а он нормально строит?
Итак, в заключение, у меня есть два вопроса:
- Где находятся заголовки для SCTP на Mac OSX?
- Могу ли я настроить сервер SCTP без надлежащих заголовков? Если так, то как?
2 ответа
На льва IPPROTO_SCTP
определяется в netinet/in.h
- Вот почему он работал просто отлично, так как вы, вероятно, включили netinet/in.h
прямо или косвенно. Тем не менее, он присутствует только в Lion, а не в каких-либо более ранних версиях OS X. (Обратите внимание, что netinet/sctp.h
не является частью POSIX и я не думаю, что это портативное устройство)
Похоже, вы могли бы сделать
brew install libusrsctp
И вы увидите здесь установленный заголовок, хотя, вероятно, это другая реализация с другим именем:
cat /usr/local/Cellar/libusrsctp/0.9.5.0/include/usrsctp.h