Qt5部署“无法找到过程入口点”位于客户端。 [英] Qt5 deployment "procedure entry point could not be located"

查看:76
本文介绍了Qt5部署“无法找到过程入口点”位于客户端。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了什么:


我在Windows 10上,我的应用程序是用C ++ / Qt 5.11.1 / MinGW 5.3.0编写的。我使用发布工具包对其进行了编译,并在 C:\Qt\5.11.1\mingw53_32\bin 上运行windeployqt。它仍然缺少 libgcc_s_dw2-1.dll libwinpthread-1.dll ,因此我从<$ c复制了它们$ c> C:\Qt\Tools\mingw530_32\bin 到应用程序目录。


错误:


每当我尝试启动我的应用程序时,都会出现错误


过程入口点_ZdlPvj无法位于Qt5Sql.dll中


过程入口点_ZNSt18condition_variable4waitERSt11unique_locklSt5mutexE不能位于Qt5Core.dll中我可以说,我已经从文件中删除了所有qDebug包含的内容,并且我假设将windeployqt复制到了正确的dll上。我已经尝试过Dependency Walker,但是无法获得太多结果,所以我不确定如何继续。

解决方案

问题是 windeployqt 由于某种原因无法找到 gcc 。我使用 SET PATH =%PATH%; C:\Qt\Tools\mingw530_32\bin 将其添加到cmd的路径中。再次运行 windeployqt 之后,我不必复制 libgcc_s_dw2-1.dll libwinpthread-1.dll 手动切换,并且使用了正确的Qt5Core.dll,因为该应用程序现在可以正常工作。


What I have done:

I'm on Windows 10 and my application is written in C++ / Qt 5.11.1 / MinGW 5.3.0. I compiled it with the release kit and I've run windeployqt from C:\Qt\5.11.1\mingw53_32\bin on it. It was still missing libgcc_s_dw2-1.dll and libwinpthread-1.dll, so I copied them from C:\Qt\Tools\mingw530_32\bin to the application directory as well.

The error:

Whenever I try to start up my app, I get the errors

Procedure entry point _ZdlPvj could not be located in Qt5Sql.dll

Procedure entry point _ZNSt18condition_variable4waitERSt11unique_locklSt5mutexE could not be located in Qt5Core.dll

From what I can tell, I've removed all qDebug includes from my files and I'm assuming windeployqt copied over the correct dlls. I've tried Dependency Walker, but could not make much of the results, so I'm not sure how to proceed.

解决方案

The problem was that windeployqt was unable to locate gcc for some reason. I added it to my path from cmd with SET PATH=%PATH%;C:\Qt\Tools\mingw530_32\bin. After I ran windeployqt again, I did not have to copy libgcc_s_dw2-1.dll and libwinpthread-1.dll over manually and it used the correct Qt5Core.dll, since the application is now working fine.

这篇关于Qt5部署“无法找到过程入口点”位于客户端。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆