"error LNK2019: 无法解析的外部符号"原因分析
1.工程属性选择错误
- 问题:

- 分析:
新建的是控制台程序,但编译器和链接器却用的是windows子系统 - 解决办法:
WINDOWS和CONSOLE选择
右键工程名, 打开属性,依次找到以下路径:

然后将这里的_WINDOWS删除,并添加_CONSOLE

接下来再依次点击如下路径:

将这里的子系统切换为“控制台”,修改完成后再次编译即可。
相反,如果是windows程序,就按照相反的设置来配置即可 - 结果:
编译成功!

2.缺少依赖
- 问题:

- 分析:
头文件中使用了extern "C"声明了NewSecuTradeApi函数extern "C"{
TRADE_API_EXPORT CHSSecuTradeApi* NewSecuTradeApi(const char *pszFlowPath);
}
函数是用C语言写的,VS编译器会按C语言规则编译,但链接器却不知道还傻傻的用C++规则的函数名去找,结果却没找到,说明头文件对应的依赖库没有包含
- 解决办法:
添加工程引用的lib文件名:
项目->属性->配置属性->链接器->输入->附加依赖项:加上lib文件名。

或者利用预处理命令:#pragma comment(lib, "../../lib/win64/HSSecuTradeApi.lib")
- 结果:
编译成功!

其他原因分析
3.缺少实现
只是在.h里面声明了某个方法,没有在cpp里面实现;
类方法的实现未加类标识:如, “CTest::Connect(void) { … }” 写成了 “Connect(void) { … }”;
4.文件同名
在工程中加入了有相同名字的文件或者类;
5.缺少.lib路径/引用或.h目录
如果此类为静态库中定义的类,可能没有添加头文件目录和文件引用的lib静态库路径;一般出现于你使用了第三方提供的库,下载了头文件却忘了载库文件,或库文件忘记放到相应的目录下了。
添加工程的头文件目录:
- 项目->属性->配置属性->C/C+±>常规->附加包含目录:加上头文件的存放目录;
添加文件引用的lib静态库路径:
- 项目->属性->配置属性->链接器->常规->附加库目录:加上lib文件的存放目录;
添加工程引用的lib文件名:
- 项目->属性->配置属性->链接器->输入->附加依赖项:加上lib文件名。
或利用预处理命令#pragma comment (lib, “xxx.lib”);
6.dll文件未添加
如果此类为动态库中定义的类,可能没有添加该动态库.dll文件到工程中;我出现过这个问题;
添加方法: 将.dll放到生成的.exe所在的文件夹下(项目->属性->配置属性->常规->输出目录,可以看到.exe生成在哪个目录下)
参考:
链接:https://blog.csdn.net/woshigaowei5146/article/details/115656266
"error LNK2019: 无法解析的外部符号"原因分析的更多相关文章
- [转] “error LNK2019: 无法解析的外部符号”之分析
HiLoveS原文“error LNK2019: 无法解析的外部符号”之分析 最近在用VS 2008开发,初学遇到不少问题,最头疼的问题之一就是:LNK2019. 百度一下讲的并不够全面,反正都没解决 ...
- “error LNK2019: 无法解析的外部符号”之分析
最近在用VS 2008开发,初学遇到不少问题,最头疼的问题之一就是:LNK2019. 百度一下讲的并不够全面,反正都没解决我的问题. error LNK2019问题在VC 6.0中是error LNK ...
- 摘:"error LNK2019: 无法解析的外部符号 该符号在函数 中被引用" 错误原因
例如“error LNK2019: 无法解析的外部符号error LNK2001: 无法解析的外部符号“private: static struct _OVERLAPPED CUsbCom::g_Wr ...
- 【转】MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainC
@2018-12-18 [小记] vs-2013 编译 cJSON code in git-hub 时遇见问题 error LNK2019,解决如下 [问题描述]MSVCRTD.lib(crtexew ...
- MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16
1.问题描述做开源项目时,碰到VS2010报错如下:MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___ ...
- error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 Debug ...
- MSVCRTD.lib(mfc.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainC (转)
一.问题描述 我所使用的编程环境:VS2010 出现的问题如下: MSVCRTD.lib(mfc.obj) : error LNK2019: 无法解析的外部符号_WinMain@16,该符号在函数 _ ...
- error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCR...
http://blog.csdn.net/playstudy/article/details/6661868 一,问题描述MSVCRTD.lib(crtexew.obj) : error LNK201 ...
- ACE_TEST1.obj : error LNK2019: 无法解析的外部符号
ACE_TEST1.obj : error LNK2019: 无法解析的外部符号 "int __cdecl ace_main_i(int,char * * const)" (?ac ...
- 一个小错误:error LNK2019: 无法解析的外部符号 "public: __thiscall Turtle::~Turtle(void)" (??1Turtle@@QAE@XZ),该符号在函数 _main 中被引用
昨天在撸代码的时候遇到了一个十分蛋疼的错误 : 错误: 1>3.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall Turtle::~ ...
随机推荐
- Basic concepts of complex number
目录 虚数的引入 复数和虚数的关系 Example - 分辨一个数 判断两个复数是否相等的条件 共轭复数 复数的几何意义.复平面的认识 求复数的模 Reference 虚数的引入 假设有一个数,可以叫 ...
- (Good topic)四因数 (leetcode 181周赛T2)
四因数难度中等1收藏分享切换为英文关注反馈给你一个整数数组 nums,请你返回该数组中恰有四个因数的这些整数的各因数之和. 如果数组中不存在满足题意的整数,则返回 0 . 示例: 输入:nums ...
- UIPath流程控制
应当仔细地观察,为的是理解:应当努力地理解,为的是行动. UIPath程序中流程控制主要包括条件语句.循环语句以及中断语句.下面我们一一学习这些语句在RPA流程设计中的使用. 1. 条件判断 if ...
- CART算法解密:从原理到Python实现
本文深入探讨了CART(分类与回归树)算法的核心原理.实现方法以及应用场景.文章首先介绍了决策树的基础知识,然后详细解析了CART算法的工作机制,包括特征选择和树的构建.接着,通过Python和PyT ...
- 基于FFmpeg和Qt实现简易视频播放器
VideoPlay001 记得一键三连哦 使用qt+ffmpeg开发简单的视频播放器,无声音 视频解码使用的是软解码即只用CPU进行QPainter绘制每一帧图像,CPU占用过高 简单易学,适合小白入 ...
- Modbus通用串口转PROFINET IO网关TS-180 在锅炉厂智能温湿度监控系统中的应用
背景: 现代科学技术和工业的迅速发展,不断促进着自动化控制技术及设备通信技术的创新和发展.当前,PLC.DCS.智能仪表等已广泛应用到现场生产控制系统中,本应用案例是在锅炉行业的温湿度监控系统中,西门 ...
- STM32一个定时器输出四路不同频率和占空比PWM波的方法
一般来说,一个定时器输出4路频率相同.占空比不同的PWM波是比较容易的,使用PWM模式即可实现.如果说是输出4路频率不同.占空比不同的PWM就没有现成的模式,是不是无法实现了呢?答案肯定是" ...
- 安全测试工具Burpsuit和OWASP ZAP使用入门指南
Burpsuit使用入门指南 安装: 网上有很多相关相关保姆级别教程,所以这里不加赘述了 尽量使用java8版本,破解版兼容8做的比较好 如果发现注册机无法打开或者能打开注册机[run]无法点击唤起软 ...
- python tkinter 使用(二)
python tkinter 使用(二) 本篇文章着重讲下tkinter中messagebox的使用. 1:提示框 def showinfo(event): messagebox.showinfo(& ...
- 23年底,我出齐了Spring boot,Spring cloud和案例方面的书,正在写一本面试书(代年终总结)
年末了,再来总结一下吧,希望本人明年的年终总结文还能在博客园发. 这次总结的主题是本人出的java书.这几年本人出了不少书,其中有python.redis和Java方面的. 姑且不说其它,java方面 ...