zoukankan      html  css  js  c++  java
  • 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 解决办法

    一,问题描述

    MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 
    Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令

    error LNK2001: unresolved external symbol _WinMain@16
    debug/main.exe:fatal error LNK 1120:1 unresolved externals 
    error executing link.exe;

    二,产生这个问题可能的原因

    产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,如果是dos控制台程序,那么main是入口函数,而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。

    可能:

    1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.

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

    3.根本就没有WinMain或Main函数。

    三, 解决方法

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

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

    3.保存设置,Rebuild All.

    ---------------------------转

    mine: 添加main()

    又遇到一次无法解析的外部符号

    是因为在.h中声明的方法 没有在.cpp中定义

    又又一次遇到 无法解析的外部符号 "__declspec(dllimport)。。。。这个是lib 没配好   就是需要在 项目属性-》链接器-》输入-》附加依赖库 里把相应的XXX.lib加进去

    又又又遇到了 .obj无法解析的外部符号  后面无法解析的那个函数 的位置 找到相应的lib 添加到依赖库里

    又又又又又又。。。是因为 诸多lib版本乱掉了 

    from:http://www.cnblogs.com/minggoddess/archive/2010/12/15/1907180.html

  • 相关阅读:
    如何编译完全使用静态库的可执行文件
    交叉编译jpeglib遇到的问题
    安装SDL遇到的问题
    软链接/硬链接删除事项
    alias命令使用
    Linux下学习摄像头使用
    018 字符串类型及操作
    017 示例3-天天向上的力量
    016 数字类型及操作
    015 基本数据类型
  • 原文地址:https://www.cnblogs.com/lidabo/p/2808406.html
Copyright © 2011-2022 走看看