Qt creator中项目的构建配置和运行设置的步骤

使用 Qt Creator 集成开发环境构建和运行程序是一件非常简单的事情,一个按钮或者一个快捷键搞定全部,大家已经都了解了。但是,这些看起来简单的过程,背后到底发生了什么呢?

点击 Qt Creator 项目模式,可以看到当前项目的配置界面:

在打开具体的项目之后,Qt Creator 的项目模式才会变得可用。对于打开的项目,比如 HelloWorld 项目,可配置的内容如上图左侧显示的五大类,分别是“Build & Run(构建和运行)”“编辑器”“代码风格”“依赖关系”“Clang Static Analyzer(Clang静态分析)”,最常用的就是“Build & Run”。

对于每个 Qt 套件,又可以分别配置构建时环境、命令和运行时环境、命令。如果需要给生成的可执行程序如 *.exe 附加命令参数,那就可以点击 Qt 套件名称下方的“Run”设置,给可执行程序附加参数。下面重点关注“Build”设置。

在“Build”设置里,上方组合框里可以选择构建类型(Debug、Release 或者 Profile),并且可以自己添加新的构建类型(一般没必要)。

影子构建(Shadow build)

接下来“概要”里面,Qt Creator 默认使用影子构建方式(Shadow build),这种构建项目的方式是将构建过程中的中间文件和目标程序都放到独立的构建目录中,实现源代码目录和构建目录的彻底分离,这对程序源代码的发布很方便,不会将构建过程中的中间文件混杂进来。

对于项目 HelloWorld ,它的源代码路径是 D:\QtDemo\HelloWorld,而上图中影子构建的目录是在 D:\QtDemo\build-HelloWorld-Desktop_Qt_5_9_0_MinGW_32bit-Debug,源码文件夹和构建文件夹都在父文件夹 QtDemo 里。

影子构建目录的命名规则是:build-项目名-构建套件名-构建类型 。示范的项目名 HelloWorld,套件名 Desktop Qt 5.9.0 MinGW 32bit,构建类型为 Debug,合成之后的构建目录里不能带空格和点号,所以把空格和点号都换成下划线,得到 build-HelloWorld-Desktop_Qt_5_9_0_MinGW_32bit-Debug 。项目构建时生成的中间文件和最终的目标程序都可以在影子构建目录里找到。

构建步骤

接着是“构建步骤”,前面提到过 qmake 编译程序的三板斧,因为 pro 文件已经由 Qt Creator 生成好了,所以这时候编译程序只需要剩下的两板斧:
①用 qmake 生成 Makefile 到构建目录;
②在构建目录里面执行 make (mingw32-make) 。

对于这两板斧的细节可以点开 qmake 和 Make 两行右边的详情进行查看,这里不额外截图了,仅解释一下上图中 qmake 命令的选项参数:

-r选项是指递归检查项目文件夹的意思;
-spec win32-g++选项参数是指使用 win32-g++ 定制脚本来生成 Makefile,对于不同的编译器和操作系统平台会使用不同的定制脚本,win32-g++ 是专门针对 Windows 系统 MinGW 编译环境的定制脚本(实际的定制脚本位于 QTDIR/mkspecs/win32-g++ 文件夹里);
"CONFIG+=debug"是指生成 debug 类型的目标程序,对于优化发行版,对应的就是 “CONFIG+=release”,如果这两个 CONFIG 都不加,那么默认生成 release 类型的目标程序。

查看项目构建和项目运行时的实际情况

关于 Qt 项目构建的设置暂时介绍这些,接下来我们看看关于项目构建和项目运行时的实际情况。回到 Qt Creator 编辑模式,点击最下面一排输出面板里的“编译输出”面板,可以看到生成项目过程中的编译、链接命令:

Qt Creator 实际使用的编译链接命令比我们之前演示的编译链接命令复杂太多了,之前使用的是极度精简的命令。如果项目的编译链接没有出问题,不用太在意“编译输出”面板里的东西,如果编译链接过程出错了,就需要查看“编译输出”面板里的问题了。虽然 Qt Creator 编译链接命令复杂,但大致过程和《Qt .ui文件的使用》最后那张生成过程图是类似的。

与“编译输出”面板相比,“应用程序输出”面板更为常用,对于调试信息的输出、打印到命令行的输出等,Qt Creator 都会捕捉到,并显示到“应用程序输出”面板,如下图所示:

“应用程序输出”面板标题栏位置还有些小按钮,感兴趣的读者可以自己试试,有清空输出内容、重新运行程序、停止当前运行程序之类快捷功能。

运行设置

最后说明一下目标程序的运行环境,如果希望从集成开发环境为生成的目标程序加命令行参数,那么需要用到项目模式的“运行设置”:

点击“Run”按钮,就会进入运行配置界面,可以看到上图几个关键的路径和参数设置:
路径/参数 说明
Executable 可执行程序路径,或叫目标程序路径,生成的 exe 文件为 D:\QtDemo\build-HelloWorld-Desktop_Qt_5_9_0_MinGW_32bit-Debug\debug\HelloWorld.exe,如果进入该路径,直接运行 exe 文件,那么 exe 文件默认是无法正常运行的,因为缺少运行时依赖的动态库和环境变量。需要从开始菜单启动 Qt 命令行,然后从命令行启动 exe 才能正常运行。

Command line arguments 目标程序的命令行参数,可以在这里手动添加命令行参数,这样每次 Qt Creator 启动目标程序时都会附加该参数。

Working directory 目标程序工作路径,这里需要特别注意,目标程序既不是从源代码路径启动,也不是从它自己的可执行程序路径启动, 而是从工作路径启动,这个工作路径默认与影子构建路径一样。 因此,如果在程序代码里面使用相对路径操作文件,如 “data.db”,那么这个文件应该放到工作路径,这样目标程序从 Qt Creator 启动时,才能找到相对路径里的文件。

运行设置里面还有一个重要的设置就是 Run Environment,运行时环境变量的设置,我们标出其中重要的变量如下:

读者一般对 PATH 环境变量比较熟悉,就是大量可执行程序 *.exe 和依赖库 *.dll 的路径,程序启动时会从 PATH 环境变量找寻依赖的 dll 并加载。Qt 也为 PATH 添加了自己的依赖库路径,新增的有三个路径:
D:\Qt\5.9\mingw53_32\lib;
D:\Qt\5.9\mingw53_32\bin;
D:\Qt\Tools\mingw530_32\bin;

第一个是编译时依赖库的路径,第二个是 Qt 库自己可执行程序和动态库路径,第三个是 MinGW 编译环境的可执行程序和动态库路径。

除了 PATH 环境变量,Qt 库专属的 QTDIR 环境变量也很重要,Qt 程序运行时不仅依赖 *.dll ,还依赖 Qt 库里面的插件、翻译文件、设置文件等等,QTDIR 是 Qt 库的总目录,Qt 程序根据这个总目录自动去找寻子文件夹,子文件夹会包含 Qt 程序运行时依赖的其他东西。

如果读者希望把 Qt 的依赖库集成到操作系统的环境变量,那么不仅要设置 PATH,还要设置正确的 QTDIR。QTIDR 通常就是 qmake.exe 所在文件夹的父文件夹,比如 qmake.exe 位于 D:\Qt\5.9\mingw53_32\bin,那么 QTDIR 就是 D:\Qt\5.9\mingw53_32 。

到此这篇关于Qt creator中项目的构建配置和运行设置的步骤的文章就介绍到这了,更多相关Qt creator构建配置和运行设置内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Qt Creator使用教程的简单说明

    目录 Qt Creator 欢迎界面 Qt Creator 新建项目 1)左边栏 2) 代码编辑器 Qt Creator 编辑 UI Qt Creator 生成和运行程序 Qt 在很长的一段时间内都没有自己的开发环境,直到 Qt 被诺基亚收购,才大力推自己的集成开发环境,就是 Qt Creator,这为 Qt 的开发带来了很大的方便. 在 Qt Creator 诞生之前, 程序员可以通过 qmake 命令行编译,或者像前面几节一样手动输入 g++ 命令编译,在 Linux 平台还有 KDevel

  • VS2012下QT creator登录对话框设计

    最近看<Qt教程及软件>学习QT,这本书的编程是在Qt creator上进行的,本人更倾向于在VS2012上进行开发,故根据自己实验中的经验,笔记一下在VS2012进行Qt编程的一些问题及解决方法,本人用的是Qt5.3版本. 首先,新建一个工程 选择Qt Application,填写工程名 一直Next,Base class选择QWidget,点击Finish创建 此时项目未添加对应的include文件,有许多地方显示"can not open source file--"

  • Qt creator中项目的构建配置和运行设置的步骤

    使用 Qt Creator 集成开发环境构建和运行程序是一件非常简单的事情,一个按钮或者一个快捷键搞定全部,大家已经都了解了.但是,这些看起来简单的过程,背后到底发生了什么呢? 点击 Qt Creator 项目模式,可以看到当前项目的配置界面: 在打开具体的项目之后,Qt Creator 的项目模式才会变得可用.对于打开的项目,比如 HelloWorld 项目,可配置的内容如上图左侧显示的五大类,分别是"Build & Run(构建和运行)""编辑器"&qu

  • Springboot中项目的属性配置的详细介绍

    目录 正文 1. 少量配置信息的情形 2. 多个配置信息的情形 3. 指定项目配置文件 4. 总结 正文 我们知道,在项目中,很多时候需要用到一些配置的信息,这些信息可能在测试环境和生产环境下会有不同的配置,后面根据实际业务情况有可能还会做修改,针对这种情况,我们不能将这些配置在代码中写死,最好就是写到配置文件中.比如可以把这些信息写到 application.yml 文件中. 1. 少量配置信息的情形 举个例子,在微服务架构中,最常见的就是某个服务需要调用其他服务来获取其提供的相关信息,那么在

  • 在IIS 7中配置PHP运行环境简单步骤[图文教程]

    安装 IIS 7.0 打开 Control Panel\Programs\Programs and Features\Turn Windows features on or off, 在打开的对话框中勾选上这两个选项: 单击OK等待片刻, IIS就安装完成了. 安装 PHP 5.2.6 1. 下载: PHP 5.2.6 ;  其它版本的 PHP 下载. 2. 将压缩包解压, 放到一个目录中, 比如 D:\php 3. 将 php.ini-dist 复制到 C:\Windows 目录下并改名为 p

  • Qt Creator配置opencv环境的全过程记录

    首先需要下载好相应的opencv+控件文件夹(注意不要有中文和空格): 到文件夹下的x86/bin 目录中拷贝所有的.dll文件(建议选择按类型排序,否则有可能拷贝漏了) 复制到C:\Windows\SysWOW64下 使用: 在Qt Creator 中创建新工程,在工程中的.pro文件添加两行: INCLUDEPATH += D:/Qt_Opencv_Project/opencv_3.4.2_Qt/include LIBS += D:/Qt_Opencv_Project/opencv_3.4.

  • 使用IDEA工具配置和运行vue项目及遇到的坑

    刚来公司实习发现公司的前端使用的是vue,之前根本就没有听说过.然后一上来就需要看代码,but but 就是没有文档什么的东西,就需要自己去研读,我就想去运行其中的前端和后端联调起来方便理解,结果在配置和运行中出现了很多挫折,我就想写一下方便 大家不去采坑,直接运行好 一.在IDEA中配置vue插件 点击File-->Settings-->Plugins-->搜索vue.js插件进行安装,下面的图中我已经安装好了. 二.搭建node.js环境 安装node.js 可以去官网下载:安装过程

  • Jenkins打包微服务构建Docker镜像运行的实现

    目录 环境准备 开始 1.GitLab远程仓库创建微服务项目 2.IDEA代码推送到Gitlab 3.Jenkins创建流水线项目 4.参数化构建 5.拉取远程仓库的构建脚本 6.编写远程审查脚本sonar-project.properties 构建脚本 环境准备 1.Jenkins 2.GitLab 3.SonarQube 4.Harbor 5.Docker 6.Maven 7.JDK1.8 8.微服务项目 以上技术部分在我之前的文章中有写过 这里就不过多细化的演示,本文章主要是连贯性的将微服

  • Rainbond使用Dockerfile构建便捷应用运行流程

    目录 Dockerfile构建运行镜像 Dockerfile构建运行镜像 Rainbond平台支持直接通过Dockerfile**构建并运行镜像,操作流程简单,方便进行持续迭代. 操作流程分为以下几步: 在Github上创建Dockerfile项目,Demo项目 Dockerfile内容 ARG VERSION=1.15.0 FROM nginx:${VERSION}-alpine COPY index.html /usr/share/nginx/html/ VOLUME /data EXPOS

  • Intellij IDEA 2018配置Java运行环境的方法步骤

    个人觉得eclipse提示较少,所以今天就写了这篇文章.使用Intellij IDEA 2018实现Hello,World的时候我遇到了一些问题,解决了,所以希望能够帮到大家. 配置运行环境 前提是您一定是安装了JDK的!JDK配置的方法步骤:https://www.jb51.net/article/137386.htm 新建模块 把安装好的JDK加载进来. 输入名称后,选择你要保存的文件路径. 完成之后点击菜单上的File. 配置SDK,选择安装的JDK路径. 在com.demo的模块下的sr

随机推荐