Qt发布可能遇到的问题
1.首先要搞清楚动态链接库还是静态链接
本文只涉及动态链接库,就是编译出来的exe文件加上Qt 的必要dll文件。
一般跟别人一样的操作,直接双击 XX.exe,提示缺少什么dll,就去Qt的安装目录下的bin文件夹里去找。我找的目录是D:\Qt\Qt5.2.0\5.2.0\msvc2010\bin
2. This application failed to start because it could not find or load the Qt platform plugin "windows"
复制所需的dll后,提示了这个错误。这个错误的解决方案是:
1.可能缺少复制 libEGL.dll
2.需要把D:\Qt\Qt5.2.0\5.2.0\msvc2010\plugins\platforms\qwindows.dll,带红色的复制到你的exe执行文件目录。就是platforms文件夹,里面一个qwindows.dll
3.复制你exe需要的qt插件
首先要在程序中的 main函数中加上 QApplication::addLibraryPath("./plugins");
我写的Qt程序只用到了image插件,需要把 D:\Qt\Qt5.2.0\5.2.0\msvc2010\plugins\imageformats,带红色的文件夹包括imageformats里的大部分dll复制到exe执行文件目录就OK了,如果用到数据库插件等,也要复制。
4.使用Process Explorer 查看exe使用的dll
发布我的程序TextureUnpacker时,Process
Explorer帮助非常大,我们用Qt Creator 运行我们将要发布的程序时,就可以用 Process Explorer
查看exe使用的dll了,除了C:windows\system32的中的像下图红框中的就要关注了,程序运行失败很可能就是少了对应的dll文件。
5.最后是我用qt 5.2写的一个简单程序所需要的dll列表:
Qt发布可能遇到的问题的更多相关文章
- Qt发布程序
一.作用 将Qt软件打包发布成绿色exe,在任意非Qt环境下运行 二.找到我们软件所依赖动态库 使用Qt的windeployqt.exe(在Qt安装目录的bin下面找)--! 1.新建文件夹,在里面放 ...
- QT发布 - 动态编译,删减以来dll
经常看到网上有些论调说 Qt 程序无比庞大,甚至拿 .NET 程序来比,说 Qt 程序打包以后跟 .NET 安装包差不多大.由此影响了很多人对 Qt 的选择.我觉得有必要对此做一些澄清-- 显然这个说 ...
- Qt发布可执行程序
在Qt Creator下用release跑一遍程序,生成相应的EXE文件. 在Qt Creator下编译好的release下的 youProgramName.exe 拷贝到一个文件夹下面: 在 ...
- windows上的QT发布
1. 生成exe 1.1 release 条件下编译 1.2 将QT bin路径加入到path中去 1.3 将1.1生成的exe拷贝到单独的目录,然后cmd到这个目录,使用windeployqt编译 ...
- QT发布的EXE打包压缩成单文件
Enigma virtual box 是免费的软件虚拟化工具,它可以将多个文件封装到您的应用程序主文件,这样您的软件就可以制作成为单文件的绿色软件. enigma virtual box 支持所有类型 ...
- VS2010 win7 QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip, 不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0 ...
- 亲测VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序(图文并茂,非常详细)
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip,不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0- ...
- Qt之打包发布(NSIS详解)
来源:http://blog.sina.com.cn/s/blog_a6fb6cc90101fer8.html 发布方式 Qt发布的时候,通常使用两种方式: (1)静态编译 (2)动态编译 ...
- Qt做发布版,解决声音和图片、中文字体乱码问题(需要在main里写上QApplication::addLibraryPath("./plugins")才能加载图片,有图片,很清楚)
前些天做Qt发布版,发现居然不显示图片,后来才发现原来还有图片的库没加!找找吧,去qt的安装包,我装在了F盘,在F盘F:/QT/qt/plugins,找到了plugins,这里面有个 imagefor ...
随机推荐
- jQuery图表插件Flot中文文档
转载自:http://www.itivy.com/ivy/archive/2011/6/4/jquery-flot-chinese-doc.html 最近正在使用JQuery的flot进行画图,但是这 ...
- [LeetCode] 10. Regular Expression Matching ☆☆☆☆☆
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
- Fragment+ViewPager实现仿微信点击和滑动切换界面
这是在我写的新闻App中实现的界面切换 贴出切换界面的主要代码: xml代码: <span style="font-size:14px;"> <android.s ...
- [USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper
洛谷题目链接:[USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper 题目描述 A little known fact about Bessie and friends is ...
- aio 爬虫,去重,入库
#aio 爬虫,去重,入库 import asyncio import aiohttp import aiomysql import re from pyquery import PyQuery st ...
- Java中哈希表(Hashtable)是如何实现的
Java中哈希表(Hashtable)是如何实现的 Hashtable中有一个内部类Entry,用来保存单元数据,我们用来构建哈希表的每一个数据是Entry的一个实例.假设我们保存下面一组数据,第一列 ...
- 一道lambda表达式题目
#include <iostream> #include <functional> using namespace std; auto Pair = [](auto u, au ...
- UOJ#204 【APIO2016】Boat
Time Limit: 70 Sec Memory Limit: 256 MBSubmit: 559 Solved: 248 Description 在首尔城中,汉江横贯东西.在汉江的北岸,从西向 ...
- mysql中的单引号/小数点/字符转换为数字/警告信息
我们准备玩点有趣的: select 一个数字: mysql from mysql.user; +---+ | +---+ | | | +---+ rows in set (0.00 sec) mysq ...
- %和format 细说
Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为%还是format这根本就不算个问题.不信你 ...