Thread: Errors with including winsock 2 lib

  1. #1
    www.gamingdl.com gamingdl'er's Avatar
    Join Date
    Nov 2005
    Posts
    27

    Errors with including winsock 2 lib

    I've included the ws2_32.lib in my project settings, and the winsock2.h in all of my cpp files, but my server program won't compile.
    I'm using VC++, and heres the errors. They all appear in the winsock.h which has no presence anywhere in my program. I did move to winsock 2 from 1.1 though. I'd also like to say no functions have code in them, its just to test if I set up my window correctly.


    Code:
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(99) : error C2011: 'fd_set' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(134) : warning C4005: 'FD_SET' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(83) : see previous definition of 'FD_SET'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(143) : error C2011: 'timeval' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(199) : error C2011: 'hostent' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(212) : error C2011: 'netent' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(219) : error C2011: 'servent' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(226) : error C2011: 'protoent' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(310) : error C2011: 'in_addr' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(368) : error C2011: 'sockaddr_in' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(378) : error C2011: 'WSAData' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(430) : warning C4005: 'SO_DONTLINGER' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(391) : see previous definition of 'SO_DONTLINGER'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(483) : warning C4005: 'AF_IPX' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(449) : see previous definition of 'AF_IPX'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(506) : warning C4005: 'AF_MAX' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(468) : see previous definition of 'AF_MAX'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(512) : error C2011: 'sockaddr' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(521) : error C2011: 'sockproto' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(560) : error C2011: 'linger' : 'struct' type redefinition
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(573) : warning C4005: 'SOMAXCONN' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(533) : see previous definition of 'SOMAXCONN'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(598) : warning C4005: 'FD_READ' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(551) : see previous definition of 'FD_READ'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(601) : warning C4005: 'FD_WRITE' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(552) : see previous definition of 'FD_WRITE'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(604) : warning C4005: 'FD_OOB' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(553) : see previous definition of 'FD_OOB'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(607) : warning C4005: 'FD_ACCEPT' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(554) : see previous definition of 'FD_ACCEPT'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(610) : warning C4005: 'FD_CONNECT' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(555) : see previous definition of 'FD_CONNECT'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(613) : warning C4005: 'FD_CLOSE' : macro redefinition
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(556) : see previous definition of 'FD_CLOSE'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1427) : error C2375: 'accept' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(707) : see declaration of 'accept'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1448) : error C2375: 'bind' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(710) : see declaration of 'bind'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1467) : error C2375: 'closesocket' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(712) : see declaration of 'closesocket'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1486) : error C2375: 'connect' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(714) : see declaration of 'connect'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1507) : error C2375: 'ioctlsocket' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(716) : see declaration of 'ioctlsocket'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1528) : error C2375: 'getpeername' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(718) : see declaration of 'getpeername'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1549) : error C2375: 'getsockname' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(721) : see declaration of 'getsockname'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1572) : error C2375: 'getsockopt' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(724) : see declaration of 'getsockopt'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1593) : error C2375: 'htonl' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(727) : see declaration of 'htonl'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1610) : error C2375: 'htons' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(729) : see declaration of 'htons'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1627) : error C2375: 'inet_addr' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(731) : see declaration of 'inet_addr'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1644) : error C2375: 'inet_ntoa' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(733) : see declaration of 'inet_ntoa'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1662) : error C2375: 'listen' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(735) : see declaration of 'listen'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1680) : error C2375: 'ntohl' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(737) : see declaration of 'ntohl'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1697) : error C2375: 'ntohs' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(739) : see declaration of 'ntohs'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1717) : error C2375: 'recv' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(741) : see declaration of 'recv'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1742) : error C2375: 'recvfrom' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(743) : see declaration of 'recvfrom'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1768) : error C2375: 'select' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(746) : see declaration of 'select'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1792) : error C2375: 'send' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(749) : see declaration of 'send'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1817) : error C2375: 'sendto' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(751) : see declaration of 'sendto'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1843) : error C2375: 'setsockopt' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(754) : see declaration of 'setsockopt'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1865) : error C2375: 'shutdown' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(757) : see declaration of 'shutdown'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1885) : error C2375: 'socket' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(759) : see declaration of 'socket'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1908) : error C2375: 'gethostbyaddr' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(763) : see declaration of 'gethostbyaddr'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1927) : error C2375: 'gethostbyname' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(766) : see declaration of 'gethostbyname'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1945) : error C2375: 'gethostname' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(768) : see declaration of 'gethostname'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1964) : error C2375: 'getservbyport' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(770) : see declaration of 'getservbyport'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(1983) : error C2375: 'getservbyname' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(772) : see declaration of 'getservbyname'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2001) : error C2375: 'getprotobynumber' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(775) : see declaration of 'getprotobynumber'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2018) : error C2375: 'getprotobyname' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(777) : see declaration of 'getprotobyname'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2038) : error C2375: 'WSAStartup' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(781) : see declaration of 'WSAStartup'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2056) : error C2375: 'WSACleanup' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(783) : see declaration of 'WSACleanup'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2073) : error C2375: 'WSASetLastError' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(785) : see declaration of 'WSASetLastError'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2090) : error C2375: 'WSAGetLastError' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(787) : see declaration of 'WSAGetLastError'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2107) : error C2375: 'WSAIsBlocking' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(789) : see declaration of 'WSAIsBlocking'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2124) : error C2375: 'WSAUnhookBlockingHook' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(791) : see declaration of 'WSAUnhookBlockingHook'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2141) : error C2375: 'WSASetBlockingHook' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(793) : see declaration of 'WSASetBlockingHook'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2158) : error C2375: 'WSACancelBlockingCall' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(795) : see declaration of 'WSACancelBlockingCall'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2180) : error C2375: 'WSAAsyncGetServByName' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(797) : see declaration of 'WSAAsyncGetServByName'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2207) : error C2375: 'WSAAsyncGetServByPort' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(802) : see declaration of 'WSAAsyncGetServByPort'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2233) : error C2375: 'WSAAsyncGetProtoByName' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(806) : see declaration of 'WSAAsyncGetProtoByName'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2258) : error C2375: 'WSAAsyncGetProtoByNumber' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(810) : see declaration of 'WSAAsyncGetProtoByNumber'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2283) : error C2375: 'WSAAsyncGetHostByName' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(814) : see declaration of 'WSAAsyncGetHostByName'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2310) : error C2375: 'WSAAsyncGetHostByAddr' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(818) : see declaration of 'WSAAsyncGetHostByAddr'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2333) : error C2375: 'WSACancelAsyncRequest' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(822) : see declaration of 'WSACancelAsyncRequest'
    d:\program files\microsoft visual studio2\vc98\include\winsock2.h(2353) : error C2375: 'WSAAsyncSelect' : redefinition; different linkage
            d:\program files\microsoft visual studio2\vc98\include\winsock.h(824) : see declaration of 'WSAAsyncSelect'
    Visit www.gamingdl.com - A gaming download database
    *Complete and ready for you!

  2. #2
    carry on JaWiB's Avatar
    Join Date
    Feb 2003
    Location
    Seattle, WA
    Posts
    1,972
    I get the same errors if I include winsock.h before winsock2.h. I believe windows.h also includes winsock.h. Try moving that include (if you have it) to after you include winsock2.h.
    "Think not but that I know these things; or think
    I know them not: not therefore am I short
    Of knowing what I ought."
    -John Milton, Paradise Regained (1671)

    "Work hard and it might happen."
    -XSquared

  3. #3
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    Quote Originally Posted by gamingdl'er
    I've included the ws2_32.lib in my project settings, and the winsock2.h in all of my cpp files
    Let us make note that every error you posted contains the word "redefinition" I've seen this happen because of ordering of the includes. I forgot how it goes, but fiddle with it.

    EDIT: Yeah, I think JaWiB pinpointed it.

    ...and this is right out of windows.h on my compiler.
    Code:
    #include <winsock2.h>
    /*
     * MS likes to include mswsock.h here as well,
     * but that can cause undefined symbols if
     * winsock2.h is included before windows.h
     */
    Last edited by SlyMaelstrom; 12-05-2005 at 08:11 PM.
    Sent from my iPadŽ

  4. #4
    www.gamingdl.com gamingdl'er's Avatar
    Join Date
    Nov 2005
    Posts
    27
    Thanks, works now :P SImple things like that drive me nuts.
    Visit www.gamingdl.com - A gaming download database
    *Complete and ready for you!

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. 100+ errors
    By Ryu++ in forum C++ Programming
    Replies: 5
    Last Post: 10-20-2005, 08:53 AM
  2. Winsock compilation errors
    By jmd15 in forum Networking/Device Communication
    Replies: 2
    Last Post: 08-03-2005, 08:00 AM
  3. winsock
    By pode in forum Networking/Device Communication
    Replies: 2
    Last Post: 09-26-2003, 12:45 AM
  4. Making a LIB file from a DEF file for a DLL
    By JMPACS in forum C++ Programming
    Replies: 0
    Last Post: 08-02-2003, 08:19 PM
  5. errors in class(urgent)
    By ayesha in forum C++ Programming
    Replies: 2
    Last Post: 11-10-2001, 06:51 PM