Qt调用VS封装的DLL时出现LNK2019无法解析外部函数的错误

Qt调用VS封装的DLL时出现LNK2019无法解析外部函数的错误

1.Qt中pro文件需要加入LIB +=

LIBS += -LD:\qt\sumaandb\build-sumaandb-Desktop_Qt_5_12_0_MSVC2017_64bit-Debug\debug -lDll1
在这里插入图片描述
这里不能有空格 不然会出:“-1: error: LNK1146: 没有用选项“/LIBPATH:”指定的参数”这个错误

注意:空格删掉以后,要先执行 构建->执行qmake,然后重新构建项目,然后才能消除这个错误!

2.注意Qt编译器的版本与VS输出DLL的编译器版本是否一致

Qt的编译器是64位的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在C++调用DLL出现LNK2019错误通常是由于链接器无法解析外部符号引起的。这个错误通常发生在以下几种情况下: 1. 缺少库文件:在代码中使用了某个函数或变量,但是没有包含相应的库文件。确保你已经正确地包含了所需的库文件,并且库文件的路径设置正确。\[2\] 2. 函数签名不匹配:在代码中调用DLL中的函数函数的签名(参数类型和返回类型)必须与DLL中的函数定义一致。如果签名不匹配,链接器将无法解析外部符号。请确保你在代码中正确地声明了函数的签名,并且与DLL中的函数定义一致。\[1\] 3. 缺少函数定义:如果你在代码中调用DLL中的函数,但是没有提供相应的函数定义,链接器将无法解析外部符号。请确保你已经正确地提供了函数定义,并且函数名与DLL中的函数名一致。\[1\] 4. 编译器选项不匹配:如果你在编译代码使用了不匹配的编译器选项,链接器可能无法解析外部符号。请确保你在编译代码使用了与DLL相匹配的编译器选项。\[1\] 综上所述,当在C++调用DLL出现LNK2019错误,你应该检查是否缺少库文件、函数签名是否匹配、是否缺少函数定义以及编译器选项是否匹配。根据具体情况进行相应的调整和修复即可。 #### 引用[.reference_title] - *1* *2* [c++调用dll出现LNK2001 无法解析外部符号](https://blog.csdn.net/chenhao0568/article/details/130891826)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *3* [C++ error LNK2019: 无法解析外部符号 错误解决方案](https://blog.csdn.net/qq_42672745/article/details/125921205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值