Ik heb een C++ programma van codeguru.com dat ik in Eclipse met de CDT plugin probeer te compileren. Ik heb hiervoor een zgn. 'managed make' C++ project aangemaakt. Ik gebruik cygwin voor de make/g++. Het programma gebruikt Winsock2.h
De volgende foutmeldingen in het buildproces vind ik vreemd:
In file included from ../main.cpp:48:
/usr/include/w32api/Winsock2.h:95:2: warning: #warning "fd_set and associated macros have been defined in sys/types. This may cause runtime problems with W32 sockets"
In file included from ../main.cpp:48:
/usr/include/w32api/Winsock2.h:614: error: declaration of C function `int gethostname(char*, int)' conflicts with /usr/include/sys/unistd.h:206: error: previous declaration `int gethostname(char*, unsigned int)' here
En een vriend van mij compileerde in VS6 (dus met de MS header bestanden):
main.cpp
c:\program files\microsoft visual studioold\vc98\include\winsock2.h(99) : error C2011: 'fd_set' : 'struct' type redefinition
c:\program files\microsoft visual studioold\vc98\include\winsock2.h(134) : warning C4005: 'FD_SET' : macro redefinition
c:\program files\microsoft visual studioold\vc98\include\winsock.h(83) : see previous definition of 'FD_SET'
Beiden lijken aan te geven dat er een fout zit in de include bestanden (Winsock2.h), maar dat kan ik moeilijk geloven, zeker omdat Winsock2.h volgens mij door heel veel programma's gebruikt wordt.
De volgende foutmeldingen in het buildproces vind ik vreemd:
In file included from ../main.cpp:48:
/usr/include/w32api/Winsock2.h:95:2: warning: #warning "fd_set and associated macros have been defined in sys/types. This may cause runtime problems with W32 sockets"
In file included from ../main.cpp:48:
/usr/include/w32api/Winsock2.h:614: error: declaration of C function `int gethostname(char*, int)' conflicts with /usr/include/sys/unistd.h:206: error: previous declaration `int gethostname(char*, unsigned int)' here
En een vriend van mij compileerde in VS6 (dus met de MS header bestanden):
main.cpp
c:\program files\microsoft visual studioold\vc98\include\winsock2.h(99) : error C2011: 'fd_set' : 'struct' type redefinition
c:\program files\microsoft visual studioold\vc98\include\winsock2.h(134) : warning C4005: 'FD_SET' : macro redefinition
c:\program files\microsoft visual studioold\vc98\include\winsock.h(83) : see previous definition of 'FD_SET'
Beiden lijken aan te geven dat er een fout zit in de include bestanden (Winsock2.h), maar dat kan ik moeilijk geloven, zeker omdat Winsock2.h volgens mij door heel veel programma's gebruikt wordt.