我正在尝试使用WinSock.h头文件,但我得到以下任何一个错误: 在VS2010(C ++)中:
Unresolved External Symbol to [the function included in winsock.g, e.g socket()]
在gcc命令行(C)中:
Undefined Reference to [the function included in winsock.g, e.g socket()]
代码很简单:只包含Winsock.h头文件然后
SOCKET s = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
我在socket()
&上遇到错误closesocket()
函数......!
我在Stackoverflow中搜索并发现了几个主题,但他们都建议更改头文件。我无法在这里更改WinSock.h,因此我需要在使用头文件的实际代码中使用解决方案。有什么想法吗?
答案 0 :(得分:5)
根据文档,您需要ws2_32.lib
。
转到Project-> Properties-> Linker->其他依赖项并添加ws2_32.lib
。
编辑:
那应该是Project-> Properties-> Linker-> Input-> Additional Dependencies
答案 1 :(得分:0)
这些是链接器错误,而不是编译器错误。您需要链接WinSock库。对于gcc,这意味着将库添加到链接命令行:
gcc -Lpath/to/winsock/library -o myApplication myObject.o wsock32.lib
我对Visual Studio一无所知,我担心,但this link可能有所帮助。