Windows下编译好的Qt程序运行问题

问题描述:编译完成一个Qt程序后,在Qt Creator 环境中可以执行,但是单独进入build文件夹后,双击.exe文件提示 程序无法启动,缺少 Qt5Widgets.dll 文件 。

解决过程:

  1.  首先上网下载了 Qt5Widgets.dll 文件,放到 system32 文件目录下,再次双击 .exe 文件运行,提示 程序无法启动,缺少 Qt5Widgetsd.dll 文件。
  2. 初步判断系统缺少了对 Qt 的一系列 .dll 文件依赖。上网搜索如何查找可执行程序的依赖文件的方法,windows下可以使用 Dependency Walker 查找,或者使用 Process Explorer查看正在执行的线程的实时依赖。Linux下可以用 ldd 命令。
  3. 下载安装了 Process Explorer ,在Qt Creator 开发环境中执行程序,用 Process Explorer 查看运行进程的依赖文件,具体操作 View -> Lower Pane View -> Dlls 或者直接Ctrl + D ,点击到正在运行的 Qt 线程,可以看到有 Qt5Widgets.dll ,路径是 C:\Qt\Qt5.3.2\5.3\msvc2010_opengl\bin\Qt5Widgets.dll 。
  4. 设置环境变量,将 C:\Qt\Qt5.3.2\5.3\msvc2010_opengl\bin 添加到 Path 环境变量中。双击 .exe 程序运行,问题解决。
结论:编译好的可执行程序存在各种各样的依赖文件(.dll),系统中依赖文件对程序的支持需要环境变量 Path 的路径正确。以后做安装程序可能需要将各种依赖文件同程序一起打包并在安装时注册环境变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值