错误 1 error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartu

原创 2012年02月27日 20:07:44

当出现这种错误时,你首先要做得是检查代码拼写错误 ,特别是字母拼写顺序错误、{ }不匹配敲打有很大概率是这种低级错误。接下来才考虑其它问题:

 

产生这个问题可能的原因
1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.

2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。

解决方法
1).进入project->setting->c/c++, 在category中选择preprocessor,在processor definitions中删除_CONSOLE, 添加_WINDOWS

2).进入project->setting->Link, 在Project options中将 /subsystem:console改为/subsystem:windows.

3.)保存设置,Rebuild All.

 

3.还有一种是让人脑恼火的:链接错误 与 LIBCMT冲突,与MSVCRT冲突

解决方法

1).在“配置属性-->链接器-->输入-->忽略特定库”中把libcmt.lib添加进去

2).当发生冲突的是其它自己编译的库函数时,可能是因为lib版本不一致。解决的办法是根据配置重新编译lib,打开项目属性,将“配置属性-->C/C++-->代码生成-->运行时库”设置为“多线程调试 DLL(/MDd)”(因为新工程的设置是这样子)。重新编译

 

error LNK2019: unresolved external symbol

LNK2019错误一般都是 compile是能找到相应的header (.h)文件,但链接时找不到相应的 lib 库文件(也含dll文件)

问题大致是这样:我在A.h中声明了一个函数,A.cpp中对这个函数进行了实现。在B.h中引用了A.h的头文件,在B.cpp中用到了A.cpp中实现的这个函数。发觉路径什么的都没有问题。就是报错。后来仔细检查才发现,原来我在A.cpp中实现的这个函数和A.h中定义的不一样。A.h中定义的这个函数有3个参数,A.cpp中实现的时候有5个参数,而在B.cpp中调用时考虑的是3个参数的情形。这样链接时就出现找不到函数的外部符号了。提醒大家要仔细。



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

LINK : fatal error LNK1168: cannot open Debug/WinMain.exe for writing以及LIBCD.lib(crt0.obj) : error...
  • chaoyuan899
  • chaoyuan899
  • 2012年07月19日 00:19
  • 4080

解决 unresolved external symbol 无法解析

(1) vc网络编程中遇到一个编译问题,原来是少了WSOCK32.LIB。 在 project-->settings-->Link-->Object/Library modules 中加入库WSOC...
  • fjclc2008
  • fjclc2008
  • 2011年10月20日 11:30
  • 766

vc+6.0 开发Windows窗体程序时报错:unresolved external symbol _main的解决办法

  • u012493556
  • u012493556
  • 2017年01月16日 14:57
  • 176

unresolved external symbol _AtlAxWinInit@

出现这个问题可能是由于没有保含#include #include
  • pyl2001
  • pyl2001
  • 2005年04月22日 09:45
  • 849

关于error LNK2019::Unresolved External Symbol * Referenced In Function..解决办法

Error LNK2019:Unresolved External Symbol *** Referenced In Function ***的解决方案   当头文件中声明了一个函数,但是在相应的源文...
  • baidu_24736703
  • baidu_24736703
  • 2016年05月16日 20:12
  • 5611

关于error LNK2019::Unresolved External Symbol * Referenced In Function..解决办法 2

前几天我转了一篇关于error LNK2019::Unresolved External Symbol * Referenced In Function..解决办法的博客,但我自己后来按照上面的办法并...
  • baidu_24736703
  • baidu_24736703
  • 2016年05月17日 22:13
  • 3645

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

学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误...
  • cyteven
  • cyteven
  • 2014年02月09日 13:04
  • 1008

unresolved external symbol _Sleep和unresolved external symbol _clrscr问题 vc++

首先是clrscr() 函数的问题: clrscr是TC特有的,其它C语言环境没有这个函数,也就没有头文件包含这个函数。一般用system(“cls”)替代它,兼容性好一些。syste...
  • kofandlizi
  • kofandlizi
  • 2011年04月01日 13:58
  • 2185

C++ error LNK2019: "unresolved external symbol"解决方法

1>  LINK : D:\code\OpenGLTest\Debug\OpenGLTest.exe not found or not built by the last incremental li...
  • jd_19900903
  • jd_19900903
  • 2014年05月19日 16:41
  • 5036

OpenCv error :unresolved external symbol(链接库没有加上)

Error 如下: Linking... : error LNK2001: unresolved external symbol _cvDestroyWindow : error LNK2001...
  • abcjennifer
  • abcjennifer
  • 2012年05月13日 18:49
  • 19120
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:错误 1 error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartu
举报原因:
原因补充:

(最多只允许输入30个字)