我正在尝试拉 libcurl进入大型 C++ 项目。
但是我无法编译它。我看到错误来自 ws2def.h、winsock2.h 和 ws2tcpip.h
一些错误看起来像这样:
error C2061: syntax error : identifier 'iSockaddrLength' ws2def.h 225 error C3646: 'LPSOCKADDR' : unknown override specifier ws2def.h 225 .. error C2061: syntax error : identifier 'dwNumberOfProtocols' winsock2.h 1259
我尝试在直接 C 模式下编译 #include "curl.h"的文件,但这并没有解决问题。
最佳答案
您使用的是哪个 C++ 编译器?我的根本没有 ws2def.h。此外,请记住 winsock.h 和 winsock2.h 彼此不兼容,在您的代码有机会包含 winsock2.h 之前,某些 Win32 头文件默认包含 winsock.h。因此,您可能必须通过在项目的编译器条件中定义 _WINSOCKAPI_
来禁用 winsock.h。
关于c++ - 将 libcurl 引入 C++ 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1429850/