1. 静态编译
优点: 发布简单,单一文件,在移植时如果空间足够,采用静态编译比较可靠
缺点: 库文件很大,更新程序版本不方便。每次升级,都要重新分发所有的内容。
对QT而言,需要重新编译静态库(非常耗时),且插件的使用比较麻烦http://hi.baidu.com/cyclone/blog/item/25b262d9337a172310df9b78.html
要查询应用程序关联的库,可用命令 ldd ./application
Static linking is often the safest and easiest way to distribute an application on Unix since it
relieves you from the task of distributing the Qt libraries and ensuring that they are located in the
default search path for libraries on the target system.
We have two challenges when deploying the Plug & Paint application using the shared libraries
approach: The Qt runtime has to be correctly redistributed along with the application executable,
and the plugins have to be installed in the correct location on the target system so that the
application can find them.
2. 动态编译
优点: 更新方便,发布多个产品时,可以统一使用一个库。
缺点: 文件多、杂。
采用release方式编译(QT Creator下Projects-->Build steps-->qmake bulid configuration或在pro文件中CONFIG+=release),一般需要QT/qt/bin下的libgcc_s_dw2-1.dll qtCore4.dll QtGui4.dll mingwm10.dll。此外,还应添加相应的plugin如imageformats(对于图片加载),也可以使用NSIS发布可供安装的QT程序,参考http://blog.csdn.net/dbzhang800/article/details/6411870
3. 生成有图标的exe文件
QT Creator虽然可以轻松地设置窗口的小图标,但并没有提供设置exe文件图标的功能。
其实做起来并不难。
·首先当然要准备一个.ico图标文件(假定为myIcon.ico),将其复制到工程目录当中(.pro文件所在的目录)。
·然后在QT Creator中Ctrl+N或 File --> New File or Project
选择General中的Text File
名称填写为.rc文件(如myRc.rc)
在里面只用写一行:
IDI_ICON1 ICON DISCARDABLE "myIcon.ico"
·编辑.pro文件,里面应该有:
OTHER_FILES+= \
apprc.rc
在其下再添加一行(如果没有上面的内容也没事):
RC_FILE = \
myRc.rc
·最后编译一下就好了,新生成的exe文件的图标就会变成myIcon.ico的样子
相关推荐
### Ubuntu上Qt静态编译版本制作详解 #### 概述 在进行跨平台软件开发时,经常遇到的一个问题是,如何让编译好的程序能够在没有安装Qt的机器上直接运行,而不依赖于Qt的相关动态库(如.so文件)。解决这一问题的...
另外,如果需要修改Qt程序的图标,可以在项目文件(.pro)中指定资源文件,其中包含了自定义的图标,然后在编译过程中,这些图标会被嵌入到最终的.exe文件中。 在Qt中使用QProcess类可以创建和管理子进程。QProcess...
通过上述步骤,你可以轻松地将Qt5.9.1或其他版本的Qt应用程序转化为可直接安装使用的`.exe`文件,无论是简单的安装文件还是功能丰富的安装包。这不仅提高了应用程序的用户友好性,也方便了程序的分发与安装。
在开发应用程序时,通常需要包含各种静态资源,如图标、图像、字体和配置文件。如果将这些文件作为独立的文件存储,可能会导致路径问题、版本不一致或安全风险,因为它们可能被用户意外修改或删除。因此,将资源编译...
在开发Qt应用程序后,将项目打包成Windows下的.exe可执行文件是发布软件的必要步骤。这个过程涉及到几个关键工具和技术,下面将详细讲解如何进行。 首先,Qt是一个跨平台的应用程序开发框架,由Qt Company维护,它...
- **编译过程**:rcc读取.qrc文件后,会生成一个目标文件(如frame.rcc),该文件可以被Qt应用程序直接加载并使用其中的资源。 ##### 资源初始化宏 - **Q_INIT_RESOURCE**:此宏用于初始化由.qrc文件指定的资源。...
- **复制文件**:将编译生成的可执行文件、Qt库(如果动态链接)、依赖库、以及所有必要的数据文件复制到一个新的目录下,形成一个自包含的运行环境。 6. **精简体积** 如果使用了动态链接,可以考虑使用工具如`...
资源系统是Qt的一个强大特性,它允许开发者方便地管理应用程序中的静态资源,如图像、音频文件、字体和配置文件等,而无需关心文件系统的具体路径。 首先,让我们理解什么是Qt资源系统。在Qt中,资源系统提供了一种...
文件夹,其中有程序的.exe 可执行文件。但Qt Creator 默认是用动态链接的, 就是可执行程序在运行时需要相应的.dll 文件。我们点击生成的.exe 文件,首 先可能显示“没有找到mingwm10.dll,因此这个应用程序未能启动...
6. **发布版本**:使用`windeployqt`(Windows)、`macdeployqt`(macOS)或其他类似工具,自动收集运行应用程序所需的Qt库和依赖。这些工具会帮助你复制必要的文件到输出目录,形成一个完整的部署包。 7. **自定义...
2. `main.ico`:这是应用程序的图标文件,用于在任务栏、窗口标题等地方显示应用程序的图标。 3. `readme.md`:这是一个Markdown格式的文档,通常包含项目简介、使用说明、作者信息等。在本例中,它可能详细解释了...
常见的值有`app`(应用程序)、`lib`(静态或动态库)、`subdirs`(多层目录结构的项目)等。例如,`TEMPLATE = app`表示我们要构建一个可执行的应用程序。 `TARGET`变量设定最终生成的目标文件名,可以通过`...
`res.qrc`是Qt资源文件,它可以用来将图标、图片或者其他静态资源嵌入到应用程序中。在QtCharts的示例中,可能包含了图表相关的图标或者背景图片。 `samp9_3.pro`是Qt项目文件,它定义了项目的基本信息,如使用的...
- **在Windows上发布Qt应用**:生成安装程序,并打包所有必需的依赖库。 - **创建安装程序**:使用Inno Setup、NSIS等工具创建安装包。 - **在Linux上打包Qt应用**:使用AppImage、Snap、Flatpak等方式来分发应用...
Qt是一个强大的跨平台应用程序开发框架,广泛应用于桌面、移动和嵌入式设备。它提供了丰富的API和工具,使得开发者可以方便地创建图形用户界面(GUI)。 在Qt中,布局管理器是构建用户界面的关键部分。它们负责自动...
8. **最终发布**: 当一切准备就绪后,你可以将生成的.exe文件分发给用户,他们只需要双击即可开始安装你的QT应用程序。 在“untitled”这个文件名中,我们无法获取更多具体信息,但可以推测这可能是一个未命名的...
Qt提供了一套完整的发布工具,包括qmake(项目配置)、qbs(基于文件的构建系统)和jom(多线程构建工具),以及用于编译、打包和部署应用程序的其他工具。 将多个bin文件合并成一个bin文件的过程,通常涉及以下...
- **生成代码**: 将设计转换成可编译的C++代码,这是将设计集成到实际应用程序中的关键步骤。 **和Qt Designer成为好朋友** - **深入理解**: 探讨Qt Designer的高级功能,如自定义窗口组件、复杂布局等。 - **实践...
完成编译后,生成的库文件(通常是动态链接库dll或静态链接库lib,取决于你的平台和需求)可以作为插件集成到你的QT5项目中。这通常需要在项目的.pro文件中添加依赖项,然后在代码中调用虚拟键盘的相关接口,以便在...