Qt Quick 使用 windeployqt.exe 产生 DLL 文件提示定位不到接入点,但把程序复制到 windeployqt.exe 所在目录却能正常执行

2022-03-30 09:07:22 +08:00
 rv54ntjwfm3ug8
不管怎么使用 windeployqt.exe 都提示定位不到接入点,但把程序复制到 windeployqt.exe 所在目录却能正常执行,把 windeployqt.exe 所在目录加进 PATH 也能正常执行,最后去 windeployqt.exe 所在目录手动把对应的 dll 复制过来也提示找不到接入点。扫描了下依赖好像 libstdc++-6.dll 这个文件有点问题,我看了下也就这个文件和 windeployqt.exe 所在目录下的 DLL 不一样,于是我手动去 windeployqt.exe 所在目录把这个 DLL 复制了过来,程序双击直接没反应了,也不报错,再删掉继续报定位不到接入点的错误。

从昨晚 10 点开始通宵折腾到现在还没解决,有 V 友知道是什么情况么?

报错内容:
1626 次点击
所在节点    C++
5 条回复
riiygh
2022-03-30 09:16:08 +08:00
搜索一下静态链接
missdeer
2022-03-30 09:23:25 +08:00
双击和 cmd 黑窗口里敲路径启动的行为不一样,你可以两种都试试
至于 qt 的问题,是不是你装了多个不同版本的 qt ?
还有个办法是既然放在 windeployqt 目录能正常启动,你装一个 Process Explorer 看看正常启动后加载了哪些 dll ,把这些 dll 都拷过去再试试
另外是 qt 有个叫 qt.conf 的配置文件,可以指定插件等等的目录路径,可以尝试放一个
最后,用 qml 的程序 deploy 好像要把 qt 自带的一些 qml 目录都拷过来的,看看你有没有拷
TRYADXSRT
2022-03-30 11:47:24 +08:00
可以用 Dependencies 查看下依赖关系
iriyave
2022-03-31 09:24:53 +08:00
昨天刚打包个 QtQuick 程序,一切正常,要不你新建个空的 QtQuick 项目打包看看是你自己程序问题还是其他程序也这样。
luassuns
2022-04-04 00:27:03 +08:00
qml 程序?需要指定一下 qmldir 才会把 qtquick 复制到路径下。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/843770

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX