使用visual studio code 调试HTTP协议时,编译时,报错:对 imp_getaddrinfo 的未定义引用?
这是一个未解决的外部问题的经典案例。您尝试使用的功能是getaddrinfo
. 向下滚动到该文档链接到要求部分的底部。它告诉您需要 includeWs2tcpip.h
来声明函数,而您已经这样做了。但它也告诉你需要使用Ws2_32.lib
导入库来提供函数的定义。这一步是你错过的。
因此,要解决您需要链接Ws2_32
库的问题,请添加-lWs2_32
到您的命令行选项中。
在tasks.json中增加-lWs2_32,如下所示:
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "C:\\Program Files (x86)\\mingw-w64\\i686-8.1.0-posix-dwarf-rt_v6-rev0\\mingw32\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-lWs2_32"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}