Qt:关于运行使用windeployqt打包的exe程序时报错:无法定位程序输入点,于动态链接库xxx的原因

一、关于运行程序出现报错的原因

在打包qt项目后运行exe文件时出现以下报错

同样在运行Release下的exe程序也出现了一样的报错。

通过在网上查找资料发现是因为在环境变量中为qt配置了多个编译器的路径导致的

在通过.pro文件运行时,qt会根据不同的编译器自动选择bin目录,但是如果直接双击运行exe文件,则系统会在path下找第一个编译器的bin目录来运行(直接在桌面cmd 运行windeployqt打包程序也是同理,会让程序连接到第一个bin目录的动态库),这样就会导致链接到错误的库出现报错。

解决方法:

将需要用到的编译器的bin目录上移(这个网上挺多相关资料的)

彻底解决Qt报错:无法定位程序输入点于动态链接库_qt无法定位程序输入点于动态链接库-优快云博客icon-default.png?t=O83Ahttps://blog.youkuaiyun.com/qq_41709234/article/details/123410055二、应该如何使用windeployqt打包程序

对于使用windeployqt打包程序,稍不注意可能就会使用与项目不匹配的编译器,因此在使用windeployqt打包时,可以先进入对应编译器的bin目录下再打包(不要直接桌面cmd然后打包,这样只会使用环境变量下第一个qt编译器的bin目录)

可以看到在不同的编译器下有windeployqt.exe

在对应自己项目使用的编译器下执行windeployqt命令来打包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值