Advertisement

05.09.2007 at 02:45AM PDT, ID: 22561061
[x]
Attachment Details

Use of ACE Libraries: Winsock.h and Winsock2.h Redefinition Errors

Asked by Georges_Antoun in Microsoft Visual C++.Net, Windows MFC Programming, Microsoft Visual C++

Tags: redefinition, visual, ace, error

I'm getting the compilation errors listed below in my application.
obviously, they have something to do with repeated definition of windows networking data types.
The application uses both ACE libraries(http://www.cs.wustl.edu/~schmidt/ACE.html) and wxWidgets(http://www.wxwidgets.org/). Therefore, it is a significant possiblity that this is the cause of the redefinition errors.

I would appreciate it if you can let me know of a way to solve the redefinition errors. Additionally, feel free to share any insights you have on ACE and its includes.

Thank you.

---------------------------------------------------------------------------
Partial Compiler Output:

1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(112) : error C2011: 'fd_set' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(54) : see declaration of 'fd_set'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(147) : warning C4005: 'FD_SET' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(88) : see previous definition of 'FD_SET'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(156) : error C2011: 'timeval' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(97) : see declaration of 'timeval'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(212) : error C2011: 'hostent' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(153) : see declaration of 'hostent'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(225) : error C2011: 'netent' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(166) : see declaration of 'netent'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(232) : error C2011: 'servent' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(173) : see declaration of 'servent'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(244) : error C2011: 'protoent' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(185) : see declaration of 'protoent'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(400) : error C2011: 'sockaddr_in' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(321) : see declaration of 'sockaddr_in'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(410) : error C2011: 'WSAData' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(331) : see declaration of 'WSAData'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(470) : warning C4005: 'SO_DONTLINGER' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(411) : see previous definition of 'SO_DONTLINGER'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(527) : warning C4005: 'AF_IPX' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(469) : see previous definition of 'AF_IPX'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(555) : warning C4005: 'AF_MAX' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(488) : see previous definition of 'AF_MAX'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(561) : error C2011: 'sockaddr' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(494) : see declaration of 'sockaddr'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(601) : error C2011: 'sockproto' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(503) : see declaration of 'sockproto'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(640) : error C2011: 'linger' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(540) : see declaration of 'linger'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(653) : warning C4005: 'SOMAXCONN' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(553) : see previous definition of 'SOMAXCONN'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(679) : warning C4005: 'FD_READ' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(571) : see previous definition of 'FD_READ'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(682) : warning C4005: 'FD_WRITE' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(572) : see previous definition of 'FD_WRITE'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(685) : warning C4005: 'FD_OOB' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(573) : see previous definition of 'FD_OOB'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(688) : warning C4005: 'FD_ACCEPT' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(574) : see previous definition of 'FD_ACCEPT'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(691) : warning C4005: 'FD_CONNECT' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(575) : see previous definition of 'FD_CONNECT'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(694) : warning C4005: 'FD_CLOSE' : macro redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(576) : see previous definition of 'FD_CLOSE'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1626) : error C2375: 'accept' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(744) : see declaration of 'accept'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1647) : error C2375: 'bind' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(749) : see declaration of 'bind'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1666) : error C2375: 'closesocket' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(754) : see declaration of 'closesocket'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1685) : error C2375: 'connect' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(756) : see declaration of 'connect'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1706) : error C2375: 'ioctlsocket' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(761) : see declaration of 'ioctlsocket'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1727) : error C2375: 'getpeername' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(766) : see declaration of 'getpeername'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1748) : error C2375: 'getsockname' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(771) : see declaration of 'getsockname'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1771) : error C2375: 'getsockopt' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(776) : see declaration of 'getsockopt'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1792) : error C2375: 'htonl' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(783) : see declaration of 'htonl'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1809) : error C2375: 'htons' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(785) : see declaration of 'htons'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1826) : error C2375: 'inet_addr' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(787) : see declaration of 'inet_addr'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1843) : error C2375: 'inet_ntoa' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(789) : see declaration of 'inet_ntoa'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1861) : error C2375: 'listen' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(791) : see declaration of 'listen'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1879) : error C2375: 'ntohl' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(795) : see declaration of 'ntohl'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1896) : error C2375: 'ntohs' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(797) : see declaration of 'ntohs'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1916) : error C2375: 'recv' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(799) : see declaration of 'recv'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1941) : error C2375: 'recvfrom' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(805) : see declaration of 'recvfrom'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1967) : error C2375: 'select' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(813) : see declaration of 'select'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(1991) : error C2375: 'send' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(820) : see declaration of 'send'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2016) : error C2375: 'sendto' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(826) : see declaration of 'sendto'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2042) : error C2375: 'setsockopt' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(834) : see declaration of 'setsockopt'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2064) : error C2375: 'shutdown' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(841) : see declaration of 'shutdown'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2084) : error C2375: 'socket' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(845) : see declaration of 'socket'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2107) : error C2375: 'gethostbyaddr' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(852) : see declaration of 'gethostbyaddr'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2126) : error C2375: 'gethostbyname' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(857) : see declaration of 'gethostbyname'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2144) : error C2375: 'gethostname' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(859) : see declaration of 'gethostname'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2163) : error C2375: 'getservbyport' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(863) : see declaration of 'getservbyport'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2182) : error C2375: 'getservbyname' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(867) : see declaration of 'getservbyname'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2200) : error C2375: 'getprotobynumber' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(871) : see declaration of 'getprotobynumber'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2217) : error C2375: 'getprotobyname' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(873) : see declaration of 'getprotobyname'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2237) : error C2375: 'WSAStartup' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(877) : see declaration of 'WSAStartup'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2255) : error C2375: 'WSACleanup' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(881) : see declaration of 'WSACleanup'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2272) : error C2375: 'WSASetLastError' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(883) : see declaration of 'WSASetLastError'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2289) : error C2375: 'WSAGetLastError' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(885) : see declaration of 'WSAGetLastError'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2306) : error C2375: 'WSAIsBlocking' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(887) : see declaration of 'WSAIsBlocking'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2323) : error C2375: 'WSAUnhookBlockingHook' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(889) : see declaration of 'WSAUnhookBlockingHook'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2340) : error C2375: 'WSASetBlockingHook' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(891) : see declaration of 'WSASetBlockingHook'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2357) : error C2375: 'WSACancelBlockingCall' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(893) : see declaration of 'WSACancelBlockingCall'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2379) : error C2375: 'WSAAsyncGetServByName' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(895) : see declaration of 'WSAAsyncGetServByName'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2406) : error C2375: 'WSAAsyncGetServByPort' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(903) : see declaration of 'WSAAsyncGetServByPort'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2432) : error C2375: 'WSAAsyncGetProtoByName' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(911) : see declaration of 'WSAAsyncGetProtoByName'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2457) : error C2375: 'WSAAsyncGetProtoByNumber' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(918) : see declaration of 'WSAAsyncGetProtoByNumber'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2482) : error C2375: 'WSAAsyncGetHostByName' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(925) : see declaration of 'WSAAsyncGetHostByName'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2509) : error C2375: 'WSAAsyncGetHostByAddr' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(932) : see declaration of 'WSAAsyncGetHostByAddr'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2532) : error C2375: 'WSACancelAsyncRequest' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(941) : see declaration of 'WSACancelAsyncRequest'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock2.h(2552) : error C2375: 'WSAAsyncSelect' : redefinition; different linkage
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(943) : see declaration of 'WSAAsyncSelect'
1>c:\program files\microsoft visual studio 8\vc\platformsdk\include\mswsock.h(97) : error C2011: '_TRANSMIT_FILE_BUFFERS' : 'struct' type redefinition
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\winsock.h(955) : see declaration of '_TRANSMIT_FILE_BUFFERS'
Start Free Trial
 
 
[+][-]05.09.2007 at 11:18AM PDT, ID: 19059122

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zones: Microsoft Visual C++.Net, Windows MFC Programming, Microsoft Visual C++
Tags: redefinition, visual, ace, error
Sign Up Now!
Solution Provided By: AlexFM
Participating Experts: 1
Solution Grade: A
 
 
 
Loading Advertisement...
20080716-EE-VQP-32