【QT】解决生成的exe文件出现“无法定位程序入口”或“找不到xxx.dll”的问题
【QT】解决生成的exe文件出现“无法定位程序入口”或“找不到xxx.dll”的问题
零、问题
使用QT编译好项目后,想直接在文件资源管理器中运行exe程序或想分享出去给别人使用发现出现如下问题:
- 系统错误:找不到xxx.dll。

- 无法找到入口:无法定位程序输入点xxx。

下文将介绍如何解决以上两个问题。
壹、环境介绍
QT的安装路径为D:\Qt。
我这边生成的exe文件为一个Camera.exe,放在D:\Qt\project\swap目录下,程序比较简单,故只有一个exe文件。

壹、解决“找不到xxx.dll”
在QT的安装目录下的版本号\mingw_64\bin目录下有一个windeployqt.exe程序,例如我的路径为:
D:\Qt\6.2.4\mingw_64\bin\windeployqt.exe
我们在生成的exe所在的文件夹中打开cmd窗口(提示符前面是你的exe程序所在的文件夹),输入如下命令,此程序会帮我们把一些exe运行需要用到的文件复制到当前目录下(前面的为windeployqt.exe的路径,后面的Camera.exe为你的exe程序文件名):
D:\Qt\6.2.4\mingw_64\bin\windeployqt.exe Camera.exe

会发现目录中多了一些文件,到时候分享给其他人使用需要把这些文件一起跟exe打包,这样可以解决第一个问题。
叁、解决“无法定位程序输入点xxx”
此时我们要找到QT安装目录下的版本号\mingw_64\bin目录(就windeployqt.exe程序所在目录),把里面的一些dll文件复制到你的exe程序所在的目录中即可,一般是复制这几个:
d3dcompiler_47.dll
libgcc_s_seh-1.dll
libstdc++-6.dll
libwinpthread-1.dll
不一定全用到,当然为了省事可以直接全复制过来也没关系,要是追求最小安装包,可以一个一个尝试,直到找到真正需要的那个dll。
像我这边就只需要复制一个libstdc++-6.dll就可以了。

肆、总结
总之就是去QT安装目录下的版本号\mingw_64\bin目录里复制dll就好了~
【QT】解决生成的exe文件出现“无法定位程序入口”或“找不到xxx.dll”的问题的更多相关文章
- Qt设置生成的exe文件图标
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/qq_37354286/article/d ...
- Qt编译目录下exe文件执行报错问题的解决办法
使用Qt5.9.3+vs2017环境,编译项目生成Debug目录,运行其中的exe文件,出现以下错误(qt creator调试状态下或出安装包后是可以运行的): 经过查阅资料,发现是我重新配置Qt开发 ...
- VC6.0生成的exe文件图标
以下是我网上收到的方法 我都试过 成功不了 具体说下我遇到的问题 VC6.0生成的exe文件图标是用Icon下几个图标中value值最小的,顺序为IDR_MAINFRAME.IDR_ICONTETYP ...
- CodeBlocks: 生成的exe文件自定义一个图标
CodeBlocks生成的exe文件的图标默认是系统图标,如何自定义一个漂亮的小图标呢? 我是C菜鸟,平时只用CodeBlocks练习c,也不开发什么软件,这个问题就难倒我了. 到网上搜索了一下,发现 ...
- 解决 p0sixspwn-v1.0.4 win版 无法定位程序输入点sqlite3_wal_checkpoint的问题
p0sixspwn-v1.0.4 win版今天早晨发现大神( @winocm · @iH8sn0w · @SquiffyPwn) 已经发布. 下载下来运行之,发现会报错: 无法定位程序输入点sqlit ...
- 解决无法定位程序输入点SymEnumSymbols于动态链接库dbghelp.dll
作者:朱金灿 来源:http://blog.csdn.net/clever101 下载一个源码,使用VS2008编译链接无问题,运行时出现一个错误:无法定位程序输入点SymEnumSymbols于动态 ...
- XP下 无法定位程序输入点WSAPoll于动态链接库ws2_32.dll 的解决办法
最近在给手机启用黑阈服务的时候出现了无法定位程序输入点WSAPoll于动态链接库ws2_32.dll这个错误,上网查了一下是因为SDK Platform Tools版本过高不能兼容windows xp ...
- Code::Blocks生成的EXE文件执行错误解决:The program can't start because libgcc_s_dw2-1.dll is missing
想用C++弄个简单东东,看有没有可行性, 开发软件,微软的太大太肿,就选用了Code::Blocks. 测试HELLO时,在工程环境中没问题的,但生成的EXE执行有问题, 报什么 libgcc_s_d ...
- 使用VS进行打包程序解决生成两个文件的问题(压缩后只有一个exe)
使用VS打包创建setup相信大家都挺熟的了,不熟的话网上也有很多,就不做介绍了,现在给大家写下怎么将生成的那些文件夹以及setup.exe和.msi 文件打包成一个exe 我们这里使用的是Winra ...
- Qt之生成Window资源文件(.rc 文件)
简述 qmake 可以随意地自动生成一个适当填充的 Windows 资源文件.本节主要讲解如何用 qmake 处理一个 Windows 资源文件,并将其链接到一个可执行应用程序(EXE)或动态链接库( ...
随机推荐
- .NET 响应式编程 System.Reactive 系列文章(二):深入理解 IObservable<T> 和 IObserver<T>
.NET 响应式编程 System.Reactive 系列文章(二):深入理解 IObservable<T> 和 IObserver<T> 引言:为什么我们调整了学习顺序? 在 ...
- 使用Emgu.CV开发视频播放器简述
OpenCV是大名鼎鼎的视觉处理库,其对应的c#版本为Emgu.CV.本人采用Emgu.CV开发了一款视频播放软件,可对本地视频文件和rstp在线视频流播放,还具有对视频局部区域放大功能.虽然功能比较 ...
- 15个Linux Grep命令使用实例(实用、常用)
Grep命令主要用于从文件中查找指定的字符串.首先建一个demo_file: 复制代码 代码如下: $ cat demo_fileTHIS LINE IS THE 1ST UPPER CASE LIN ...
- Java技术栈总结-基础
- - -计算机技术演化- - -1 编程语言演化1.1 写在最前 此文用于个人总结,串接知识点 1.2 汇编 举例:mov .add 特点:程序量很大,几百行.几千行乃至几万行 1.3 VB- ...
- w3cschool-Nginx 使用手册
https://www.w3cschool.cn/nginxsysc/ Nginx 使用手册 手册简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 ...
- w3cschool-Python3 爬虫抓取、深度/机器学习类
https://www.w3cschool.cn/python3/python3-enbl2pw9.html (1) requests安装 在cmd中,使用如下指令安装requests: pip in ...
- shell脚本中的变量
在shell脚本中使用变量显得我们的脚本更加专业更像是一门语言,开个玩笑,变量的作用当然不是为了专业.如果你写了一个长达1000行的shell脚本,并且脚本中出现了某一个命令或者路径几百次.突然你觉得 ...
- VOLE+OKVS的PSI技术落地应用
学习&转载文章:技术创新〡VOLE+OKVS的PSI技术落地应用 神谱科技基于VOLE+OKVS设计了两方PSI和多方PSI协议,并已应用于Seceum系列隐私计算产品中. Seceum并无开 ...
- LinkedList可以同时作为堆栈和队列使用
Java里的LinkedList可以同时作为堆栈和队列使用,因此在使用的时候总是会弄混他们的方法,此文就简单总结一下作为不同数据结构使用时的用法. 作为队列 方法 声明 任意两种方法: 一是直接声 ...
- IOC操作Bean 管理(基于 xml 方式)
1.什么是 Bean 管理(0)Bean 管理指的是两个操作(1)Spring 创建对象(2)Spirng 注入属性 2.Bean 管理操作有两种方式(1)基于 xml 配置文件方式实现(2)基于注解 ...