(1) vc网络编程中遇到一个编译问题,原来是少了WSOCK32.LIB。

在 project-->settings-->Link-->Object/Library modules 中加入库WSOCK32.LIB即可。
在VC中进行WINSOCK的API编程开发的时候,需要在项目中使用下面三个文件,否则会出现编译错误。
  1.WINSOCK.H: 这是WINSOCK API的头文件,需要包含在项目中。
  2.WSOCK32.LIB: WINSOCK API连接库文件。在使用中,一定要把它作为项目的非缺省的连接库包含到项目文件中去。
  3.WINSOCK.DLL: WINSOCK的动态连接库,位于WINDOWS的安装目录下。
--------------------Configuration: Example1 - Win32 Debug--------------------
Linking...
error LNK2001: unresolved external symbol _connect@12
error LNK2001: unresolved external symbol _htons@4
error LNK2001: unresolved external symbol _inet_addr@4
error LNK2001: unresolved external symbol _socket@12
error LNK2001: unresolved external symbol _closesocket@4
error LNK2001: unresolved external symbol _send@16
error LNK2001: unresolved external symbol _recv@16
error LNK2001: unresolved external symbol _WSAAsyncSelect@16
error LNK2001: unresolved external symbol _accept@12
error LNK2001: unresolved external symbol _listen@8
error LNK2001: unresolved external symbol _bind@12
(2) vc数据库SQL编程中遇到一个问题,原来是少了odbc32.lib。
在 project-->settings-->Link-->Object/Library modules 中加入库odbc32.lib 即可。
mfc程序调用了odbc api,连接时出错:
error   LNK2001:   unresolved   external   symbol   _SQLConnect@28
error   LNK2001:   unresolved   external   symbol   _SQLFetch@4
error   LNK2001:   unresolved   external   symbol   _SQLBindCol@24
error   LNK2001:   unresolved   external   symbol   _SQLFreeHandle@8
error   LNK2001:   unresolved   external   symbol   _SQLExecDirect@12
error   LNK2001:   unresolved   external   symbol   _SQLAllocHandle@12
error   LNK2001:   unresolved   external   symbol   _SQLSetEnvAttr@16
error   LNK2001:   unresolved   external   symbol   _SQLDisconnect@4
(3) vc   OpenCV图像处理编程中遇到一个问题,原来是少了cv.lib cvaux.lib cxcore.lib highgui.lib。
在 project-->settings-->Link-->Object/Library modules 中加入库cv.lib cvaux.lib cxcore.lib highgui.lib 即可。
error LNK2001: unresolved external symbol _cvReleaseImage
error LNK2001: unresolved external symbol _cvWaitKey
error LNK2001: unresolved external symbol _cvDrawContours
error LNK2001: unresolved external symbol _cvReleaseMemStorage
error LNK2001: unresolved external symbol _cvDestroyWindow
error LNK2001: unresolved external symbol _cvFindContours
error LNK2001: unresolved external symbol _cvCvtColor
error LNK2001: unresolved external symbol _cvCreateImage
error LNK2001: unresolved external symbol _cvGetSize
error LNK2001: unresolved external symbol _cvShowImage
error LNK2001: unresolved external symbol _cvLoadImage
error LNK2001: unresolved external symbol _cvNamedWindow
error LNK2001: unresolved external symbol _cvCreateMemStorage
(4) vc OpenGL三维编程中遇到一个问题,原来是少了OpenGL32.lib GLu32.lib GLaux.lib。
在 project-->settings-->Link-->Object/Library modules 中加入库OpenGL32.lib GLu32.lib GLaux.lib 即可。
error LNK2001: unresolved external symbol _gluPerspective@32
error LNK2001: unresolved external symbol _gluLookAt@72
error LNK2001: unresolved external symbol __imp__glLoadIdentity@0
error LNK2001: unresolved external symbol __imp__glMatrixMode@4
error LNK2001: unresolved external symbol __imp__glViewport@16
error LNK2001: unresolved external symbol __imp__glHint@8
error LNK2001: unresolved external symbol __imp__glDepthFunc@4
error LNK2001: unresolved external symbol __imp__glEnable@4
error LNK2001: unresolved external symbol __imp__glClearDepth@8
error LNK2001: unresolved external symbol __imp__glClearColor@16
error LNK2001: unresolved external symbol __imp__glShadeModel@4
error LNK2001: unresolved external symbol __imp__glEnd@0
error LNK2001: unresolved external symbol __imp__glVertex3f@12
error LNK2001: unresolved external symbol __imp__glBegin@4
error LNK2001: unresolved external symbol __imp__glTranslatef@12
error LNK2001: unresolved external symbol __imp__glClear@4
error LNK2001: unresolved external symbol __imp__wglDeleteContext@4
error LNK2001: unresolved external symbol __imp__wglMakeCurrent@8
error LNK2001: unresolved external symbol __imp__wglCreateContext@4
(5) vc VFW视频采集编程中遇到一个问题,原来是少了VFW32.Lib
在 project-->settings-->Link-->Object/Library modules 中加入库VFW32.Lib 即可。
error LNK2001: unresolved external symbol _capCreateCaptureWindowA@32
在创建项目时, 不使用MFC AppWizard向导, 如果没有设置好项目参数, 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有:

libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
错误可能引起的原因:
1. Windows子系统设置错误, 提示:
libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Windows项目要使用Windows子系统, 而不是Console, 可以这样设置:
[Project] --> [Settings] --> 选择"Link"属性页,
在Project Options中将/subsystem:console改成/subsystem:windows
2. Console子系统设置错误, 提示:
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
控制台项目要使用Console子系统, 而不是Windows, 设置:
[Project] --> [Settings] --> 选择"Link"属性页,
在Project Options中将/subsystem:windows改成/subsystem:console
3. 程序入口设置错误, 提示:
msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16
通常, MFC项目的程序入口函数是WinMain, 如果编译项目的Unicode版本, 程序入口必须改为wWinMainCRTStartup, 所以需要重新设置程序入口:
[Project] --> [Settings] --> 选择"C/C++"属性页,
在Category中选择Output,
再在Entry-point symbol中填入wWinMainCRTStartup, 即可
4. 线程运行时库设置错误, 提示:
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
这是因为MFC要使用多线程时库, 需要更改设置:
[Project] --> [Settings] --> 选择"C/C++"属性页,
在Category中选择Code Generation,
再在Use run-time library中选择Debug Multithreaded或者multithreaded
其中,
Single-Threaded 单线程静态链接库(release版本)
Multithreaded 多线程静态链接库(release版本)
multithreaded DLL 多线程动态链接库(release版本)
Debug Single-Threaded 单线程静态链接库(debug版本)
Debug Multithreaded 多线程静态链接库(debug版本)
Debug Multithreaded DLL 多线程动态链接库(debug版本)
单线程: 不需要多线程调用时, 多用在DOS环境下
多线程: 可以并发运行
静态库: 直接将库与程序Link, 可以脱离MFC库运行
动态库: 需要相应的DLL动态库, 程序才能运行
release版本: 正式发布时使用
debug版本: 调试阶段使用

第二类:程序没有添加必要的库。

当copy网上的源程序,在本机编译的时候,由于新建的工程没有把连接用的库,在连接的时候添加进去,所以一些函数、变量找不到定义的库文件,从而出错。

texture.obj : error LNK2001: unresolved external symbol __imp__glEnable@4
texture.obj : error LNK2001: unresolved external symbol __imp__glTexEnvf@12
texture.obj : error LNK2001: unresolved external symbol __imp__glTexParameterf@12
texture.obj : error LNK2001: unresolved external symbol __imp__glTexImage2D@36
texture.obj : error LNK2001: unresolved external symbol __imp__glPixelStorei@8
texture.obj : error LNK2001: unresolved external symbol _auxDIBImageLoadA@4

解决方法:

1. 先弄清楚到底缺了哪些库,再在project=》setting=》link里面的moldul/lib 添加这些库的文件。

2. 可以用以下形式在源程序里面添加下面代码:

#pragma comment(lib, "openGL32.lib");
#pragma comment(lib, "glu32.lib");
#pragma comment(lib, "glaux.lib");

vc编译报错 unresolved external symbol __imp__PlaySoundA@12 解决办法

添加Winmm.lib和 头文件中包含 Mmsystem.h

选择"project"->"setting"->"link"->"Object/library   modules"然后添加"Winmm.lib"就可以了。

原文转自 http://www.cnblogs.com/me115/archive/2010/11/12/1875747.html

解决 unresolved external symbol 无法解析 _send@16(转)的更多相关文章

  1. [异常] VC6.0 error LNK2001: unresolved external symbol _main解决办法

    来自:http://www.douban.com/note/65638800/ 学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说 ...

  2. VC6.0 error LNK2001: unresolved external symbol _main解决办法

    学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过.产生连接错误的原因非常多,尤其LNK2001错误 ...

  3. C++错误unresolved external symbol _WinMain@16

    C++错误unresolved external symbol _WinMain@16 Linking...  LIBCD.lib(wincrt0.obj) : error LNK2001: unre ...

  4. error LNK2001: unresolved external symbol _main解决办法(zz)

    error LNK2001: unresolved external symbol _main解决办法   解决外部符号错误:_main,_WinMain@16,__beginthreadex -!t ...

  5. 解决libcurl7.50.3在windows XP SP3 VC++ 6.0下编译报错 unresolved external symbol __imp__IdnToAscii@20 unresolved external symbol __imp__IdnToUnicode@20

    错误重现: --------------------Configuration: curl - Win32 LIB Debug DLL Windows SSPI DLL WinIDN--------- ...

  6. 链接报error LNK2019: unresolved external symbol错误,解决

    http://blog.163.com/aiding_001/blog/static/22908192011102224344450/ 某次编写一个COM组件,接口定义好之后,增加了ZRX代码后编译链 ...

  7. qt 编译unresolved external symbol的错误解决

    题外问题:.rc文件报错,里面引用的.h文件打不开. 方法:rc文件移除,然后重新添加就可以: unresolved external symbol的原因: 1.没有添加编译生成的moc文件,添加对应 ...

  8. (转载)浅析error LNK2001: unresolved external symbol "public: __thisc...

    学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于      编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,      编译都已通过.产生连接错误的原因非常多 ...

  9. error LNK2001: unresolved external symbol "int g_cTemplates" (?g_cTemplates@@3HA)(转)

    原文转自:http://blog.sina.com.cn/s/blog_639a2ad70101kpen.html 编译directshow若干问题的解决 1.安装好windows sdk,进入dir ...

随机推荐

  1. tensorflow目标检测API之训练自己的数据集

    1.训练文件的配置 将生成的csv和record文件都放在新建的mydata文件夹下,并打开object_detection文件夹下的data文件夹,复制一个后缀为.pbtxt的文件到mtdata文件 ...

  2. Linux Ptrace 详解

    转 https://blog.csdn.net/u012417380/article/details/60470075 Linux Ptrace 详解 2017年03月05日 18:59:58 阅读数 ...

  3. 什么是python中的元类

    所属网站分类: python高级 > 面向对象 作者:goodbody 原文链接: http://www.pythonheidong.com/blog/article/11/ 来源:python ...

  4. RSS列表

    博客园 http://feed.cnblogs.com/blog/sitehome/rss

  5. foreach ($users as $key=>$value)

    1: foreach(array_name as $value) { statement; } 这里的array_name是你要遍历的数组名,每次循环中,array_name数组的当前元素的值被赋给$ ...

  6. HDU 2460 Network 边双连通分量 缩点

    题意: 给出一个无向连通图,有\(m\)次操作,每次在\(u, v\)之间加一条边,并输出此时图中桥的个数. 分析: 先找出边双连通分量然后缩点得到一棵树,树上的每条边都输原图中的桥,因此此时桥的个数 ...

  7. 什么是Maven?

    Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. 发文时,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具.遗憾的是, ...

  8. 【12】Firefox 快捷键大全及更改和定制快捷键的方法

    [12]Firefox 快捷键大全及更改和定制快捷键的方法 答: Firefox 本身没有提供更改和定制快捷键的选项,若有需要,请安装扩展 Keyconfig 来解决.  安装地址如下: Keycon ...

  9. MIME类型-服务端验证上传文件的类型

    MIME的作用 : 使客户端软件,区分不同种类的数据,例如web浏览器就是通过MIME类型来判断文件是GIF图片,还是可打印的PostScript文件. web服务器使用MIME来说明发送数据的种类, ...

  10. Maven项目下Tomcat插件选择方法

    1. 进入Tomcat官网:http://tomcat.apache.org/ 选择Maven plugin 2. 选择版本 3. 查看版本对应的插件版本: 有两种方式添加:如下图所示: