来自AI助手的总结
使用QProcess启动Qt可执行文件时出现无法定位输入点的错误,解决方法包括运行windeployqt或复制所需动态链接库。
错误:
在使用Qt时,使用QProcess拉起一个Qt可执行文件时。出现了下图中的错误。错误信息:无法定位程序输入点qt_version_tag_6_8于动态链接库 (一个路径)。
环境:VS2022 安装Qt扩展

解决方案:
方案1:
1:
找到Qt安装目录,提示是xxx_6_8,就找到6.8.0目录,其它同理

在/6.8.0/mingw_64/bin目录下,找到windeployqt.exe可执行文件,运行一次,再刷新一下文件夹。

2:
找到libstdc++-6.dll动态链接库,将它复制到报错的项目的可执行文件的目录下。

这样理论上就解决了,还是没有解决请参考方案2.
方案2:
1:
确认你当前编译器用的是哪一个 Qt Kit,打开 VS2022 -> 扩展 -> Qt VS Tools -> Qt Versions,
你会看到类似:Qt 6.8.0_msvc2022_64 D:\Qt\6.8.0\msvc2022_64(总之就是一个安装路径)

记下这一条路径,我们叫它<QtDir> = D:\Qt\6.8.0\msvc2022_64
(你的路径可能不同,后面全部替换成自己的)
(你的路径可能不同,后面全部替换成自己的)
2:
开始菜单(Win键) -> Qt 6.8.0 -> Qt 6.8.0 MSVC2022 64-bit Command Prompt(名称可能略有差异,关键是 MSVC2022 64-bit 那一项),双击打开后,你会看到标题栏写着Qt 6.8.0 (msvc2022_64) Command Prompt之类的![]() |
![]() |
这说明已经把
bin 目录加到了 PATH,这是保证 windeployqt 版本正确的关键。3:
找到出现错误的项目的生成目录(即存在exe文件的目录),通过控制台切换到对应的目录。
如:/d F:\Projects\tar
4:
执行部署,切换到对应目录后,使用命令:windeployqt --debug target.exe,target.exe是目录下可执行文件的文件名。
--debug 表示你当前是 Debug 构建,对应 Qt 的 d 后缀库(Qt6Cored.dll 等)。如果你后面切到 Release,就换成 --release 再跑一遍即可。执行成功可以看到目标目录下多出了很多文件。大致如图(还有其它文件截图中并未展示):

© 版权声明
THE END















暂无评论内容