фатальная ошибка: sys / socket.h: нет такого файла или каталога, режим x86_64-w64-mingw32

Я пытаюсь разработать программу, которая зависит от библиотеки сокетов, как только я пытаюсь ее сделать, она подсказывает мне:

fatal error: sys/socket.h: No such file or directory
 #include <sys/socket.h>

Моя среда сборки: Windows 8.1 под версией Cygwin x64, цель сборки: x86_64-w64-mingw32 в качестве параметров --host = x86_64-w64-mingw32.

Командная строка: cfalgs = -m64 ./configure --prefix = / usr /

Я создаю приложение, использующее GTK + 2.0.

Я пытаюсь найти находку в файле socket.h под патчем: cygwin64 \ usr \ x86_64-w64-mingw32 \ sys-root \ mingw \ include \ sys. Кажется, вообще не существует.

Значит нету x64 версии MinGW socket lib ??


person Jeffrey Ye    schedule 09.09.2014    source источник


Ответы (1)


sys/socket.h - это заголовок POSIX / SUS. MinGW предназначен для создания исполняемых файлов WinAPI. Либо переключитесь на сборку с помощью Cygwin GCC, чтобы получить доступ к средствам POSIX / SUS, либо вместо этого переключитесь на использование WinAPI winsock2.h.

person Ignacio Vazquez-Abrams    schedule 09.09.2014
comment
Да, я думаю, проблема в том, что вы упомянули. Собственно, я пытался собрать его как режим Cygwin, он работает с X11 сервером. Итак, сейчас я хотел бы создать независимую версию на платформе Windows. Поэтому мне, вероятно, нужно отменить, чтобы включить winsock2.h. - person Jeffrey Ye; 09.09.2014
comment
@Ignacio, а если он скомпилирован с помощью cygwin, нормально ли запускается исполняемый файл в Windows? - person Pacerier; 04.03.2017