error LNK2019: 无法解析的外部符号 (解决方法)
2011-01-05 10:48
483 查看
在用C++进行套接字编程时遇到下面的错误:
1>------ 已启动生成: 项目: NetClient, 配置: Debug Win32 ------
1> NetClient.cpp
1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(48): warning C4996: 'gets': This function or variable may be unsafe. Consider using gets_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:/vs2010/vc/include/stdio.h(277) : 参见“gets”的声明
1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(59): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:/vs2010/vc/include/stdio.h(371) : 参见“sprintf”的声明
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _closesocket@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_ntoa@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _recvfrom@24,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _sendto@24,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _htons@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_addr@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _socket@12,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSACleanup@0,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSAStartup@8,该符号在函数 _main 中被引用
1>C:/My Documents/Visual Studio 2010/Projects/NetServer/Debug/NetClient.exe : fatal error LNK1120: 9 个无法解析的外部命令
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
解决方法如下:
在CPP文件include语句之后加上如下代码:
#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"ws2_32.lib")
这样就可以解决了。
1>------ 已启动生成: 项目: NetClient, 配置: Debug Win32 ------
1> NetClient.cpp
1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(48): warning C4996: 'gets': This function or variable may be unsafe. Consider using gets_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:/vs2010/vc/include/stdio.h(277) : 参见“gets”的声明
1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(59): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:/vs2010/vc/include/stdio.h(371) : 参见“sprintf”的声明
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _closesocket@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_ntoa@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _recvfrom@24,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _sendto@24,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _htons@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_addr@4,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _socket@12,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSACleanup@0,该符号在函数 _main 中被引用
1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSAStartup@8,该符号在函数 _main 中被引用
1>C:/My Documents/Visual Studio 2010/Projects/NetServer/Debug/NetClient.exe : fatal error LNK1120: 9 个无法解析的外部命令
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
解决方法如下:
在CPP文件include语句之后加上如下代码:
#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"ws2_32.lib")
这样就可以解决了。
相关文章推荐
- error LNK2019: 无法解析的外部符号 __imp__FtpGetFileA@28 解决方法
- error LNK2019: 无法解析的外部符号的解决方法
- error LNK2019: 无法解析的外部符号 (解决方法)
- 使用动态库时出现,error LNK2019 无法解析的外部符号可能的解决方法。
- error LNK2019: 无法解析的外部符号(编程解决方法)
- VS2005使用WTL出现 “error LNK2019: 无法解析的外部符号_main”的解决方法
- error LNK2019: 无法解析的外部符号(编程解决方法)
- LNK2001:无法解析的外部符号 错误常见解决方法
- C++ error LNK2019: 无法解析的外部符号 _WinMain(编译问题解决方法)
- 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 解决方法
- 解决 error LNK2019: 无法解析的外部符号 问题
- MFC采用MSComm控件通信时,出现error LNK2001:无法解析的外部符号问题的解决方法
- Cocos2d-X3.0bate_关于一些“无法解析的外部符号”的配置问题解决方法
- dcmtk提示无法解析的外部符号(unresolved external symbol)的解决方法
- 无法解析的外部符号 __emul出错的解决方法
- QT中添加Q_OBJECT时编译提示obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const错误解决方法
- Cocos2d-X3.0bate_关于一些“无法解析的外部符号”的配置问题解决方法
- gSoap的“error LNK2001: 无法解析的外部符号 _namespaces”解决方法
- gSoap的“error LNK2001: 无法解析的外部符号 _namespaces”解决方法(转)
- *.Obj:error LNK2019: 无法解析的外部符号 (解决方法)