解决Qt工程从vs编译转移到mingw下无法运行、调试的问题

本文介绍如何解决Qt项目使用mingw编译后无法运行及调试的问题。首先需用windeployqt处理依赖库,并手动复制缺失库。若仍无法运行,可通过mingw gdb调试定位问题。此外,还需确保mingw相关文件已正确安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

考虑到跨平台和VS编译器安装环境不便等问题,需要将Qt工程从vs编译转移到mingw,遇到无法运行和调试的问题。笔者网上进行了相关问题的搜索,但和mingw相关的回答很少,自己专研了一下,目前已完美解决。

解决方法如下。

假设执行程序为demo.exe,路径为D:\debug\demo.exe

  1. 无法运行问题解决:替换成mingw编译通过后,直接运行程序失败(应该是vs和mingw在某些语法规则上不兼容),无任何提示,且无法执行调试。1)通过控制台窗口进入mingw目录(C:\Qt\Qt5.12.2\5.12.2\mingw73_32\bin),执行windeployqt.exe D:\debug\demo.exe命令将程序依赖的qt运行平台库添加到执行程序目录。2)双击demo.exe图标运行程序,按照提示,将缺失的库拷贝到执行程序目录下。3)双击demo.exe图标运行程序,如果可以正常运行程序,跳过此步骤。如果程序直接崩溃无任何提示,可采用mingw gdb进行程序调试,通过控制台cmd窗口,进入gdb目录(C:\Qt\Qt5.12.2\Tools\mingw730_32\bin),运行gdb D:\debug\demo.exe,进入gdb调试后,输入r执行程序。通过调试断点提示判断出错位置,修改源代码,直到可直接运行程序。
  2. 无法调试问题解决:解决了程序运行问题,如果无法在Qt中启动程序调试,最有可能的原因是C:\Qt\Qt5.12.2\Tools\mingw730_32目录下的文件没有被正确安装,可卸载重新安装或从可以正常调试程序的计算机中拷贝此目录内容进行覆盖。

至此,完美解决Qt mingw编译、运行、调试问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值