Конфликт Cygwin с winsock.h

Я использую NetBeans с CygWin и winsock, и существует конфликт между функциями (к большому сожалению, я не знал, что смешивание cygwin и winsock приводило к конфликтам)

In file included from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/winsock.h:36:0,from main.cpp:10:
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/psdk_inc/_fd_types.h:100:2: warning:
#warning "fd_set and associated macros have been defined in sys/types.
This can cause runtime problems with W32 sockets"In file included from main.cpp:10:0:
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/winsock.h:309:68:
error: declaration of C function ‘int gethostname(char*, int)’ conflicts with
/usr/include/sys/unistd.h:238:6: error: previous declaration ‘int gethostname(char*, size_t)’ here

Конфликтующие файлы: _fd_types.h и unistd.h

Я исследовал и не нашел решения моей проблемы. Я видел, что не рекомендуется использовать CygWin с Winsock, но уже слишком поздно. Я пытался поставить в проект -> свойства -> дополнительные параметры знаменитого -lws2_32 (как сказано в Ошибка компоновщика MinGW: winsock) но это все еще не работает. Я также попытался добавить элемент ws2_32.lib в моих исходных файлах, но это не сработало.
Кроме того, при использовании -lws2_32 в дополнительных опциях я не могу выбрать, куда его поместить (должно быть после источника файла), поэтому строка компиляции выглядит примерно так:

g++ -lws2_32 -c -g -lws2_32 -MMD -MP -MF build/Debug/Cygwin_4.x-Windows/main.o.d \
-o build/Debug/Cygwin_4.x-Windows/main.o main.cpp

Любое решение приветствуется, я надеюсь, что моя проблема ясна, если не просто сказать мне, и я постараюсь быть более точным.

Заранее большое спасибо 🙂

0

Решение

Мне удалось ответить на это! Что я сделал, так это щелкнул правой кнопкой мыши на проекте -> свойства -> компоновщик -> дополнительные параметры и напишите там -lws2_32.
То, что я делал раньше, было проектом -> свойства -> компилятор c ++ -> дополнительные параметры и записал -lws2_32 там.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector