Qt5 deployment “procedure entry point could not be located”

喜欢而已 提交于 2020-04-11 06:16:30

问题


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.


回答1:


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.



来源:https://stackoverflow.com/questions/52121074/qt5-deployment-procedure-entry-point-could-not-be-located

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!