翻译qmake文档(四) Building Common Project Types
本章原英文文档:http://qt-project.org/doc/qt-5/qmake-common-projects.html
| 选项 | 描述 |
| windows | 这个应用程序是一个window Gui应用程序 |
| console | 仅限于应用程序模板:这个应用程序是一个windows控制台应用程序 |
| testcase | 应用程序是一个自动化测试 |
TEMPLATE = app
DESTDIR = c:/helloapp
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
DEFINES += USE_MY_STUFF
CONFIG += release
| 变量 | 描述 |
| TESTUNNER | 在每个测试命令前添加一个命令或shell片段。例如, use-case 是一个 “timeout" 用于如果它在一个指定的时间内没有完成,将被终止测试。 |
| TESTARGS | 每附加到每个测试命令的附加参数。例如,它可能有用的传递附加参数从测试设置输出文件和格式化。(就像 QTestLib支持的 -o filename,format选项) |
# Run tests through test-wrapper and use xunitxml output format.# In this example, test-wrapper is a fictional wrapper script which terminates# a test if it does not complete within the amount of seconds set by "--timeout".# The "-o result.xml,xunitxml" options are interpreted by QTestLib.
make check TESTRUNNER="test-wrapper --timeout 120" TESTARGS="-o result.xml,xunitxml"
| 选项 | 描述 |
| insignificat_test | 在检查期间测试退出代码将被忽略 |
| 选项 | 描述 |
| dll | 这个库是一个共享库(dll). |
| staticlib | 这个库是一个静态库。 |
| plugin | 这个库是一个插件。 |
VERSION - 目标库的版本号. 如 2.3..
QT += widgets designer
基于插件项目的更多示例,请查看 Qt Designer Examples
在Debug和Release模式下构建和安装
有时,它是必要在debug和release两种模式下构建一个项目。尽管CONFIG变量可以同时保存debug和release两个选项,但是只有最后指定的选项会被应用。
在两种模式下构建
为了启动项目在两种模式下均构建,你必须把 debug_and_release 选项添加到CONFIG变量:
CONFIG += debug_and_release
CONFIG(debug, debug|release) {
TARGET = debug_binary
} else {
TARGET = release_binary
}
上面的代码片段作用域修改在每个模式下的构建目标用来确保结果目标拥有不同的名字。为目标提供不同的名字确保两者不会被彼此覆盖。
当使用qmake处理项目文件时。它将会生成一个makefile规则,用以允许项目在两种模式下构建。可以通过下面的方式调用:
make all
在项目文件里可以把build_all选项添加到CONFIG变量,用来确保项目默认是在两种模式下生成:
CONFIG += build_all
这样允许Makefile可以使用默认的规则处理
make
在两种模式下安装
build_all选项确保在安装规则被调用时将安装指向的两个目标版本:
make install
也可以根据目标平台自定义构建目标的名字。例如,一个库或插件可以在windows和Unix平台使用不同的命名习惯。
CONFIG(debug, debug|release) {
mac: TARGET = $$join(TARGET,,,_debug)
win32: TARGET = $$join(TARGET,,d)
}
在上面代码片段的默认行为是修改在debug模式下进行构建生成的目标名字。可以把else语句添加到作用域用于在release模式下做同样的事。目标名字未被修改,保持原样。
翻译qmake文档(四) Building Common Project Types的更多相关文章
- 翻译qmake文档 目录
利用空闲时间把qmke的文档翻译出来,翻译水平有限,有些地方翻译的不好,请谅解, 如果您能指出来,我会很感激并在第一时候做出修改. 翻译qmake文档(一) qmake指南和概述 翻译qmake文档( ...
- 翻译qmake文档(三) Creating Project Files
翻译qmake文档 目录 原英文文档:http://qt-project.org/doc/qt-5/qmake-project-files.html 创建项目文件 项目文件包含qmake构建你 ...
- 翻译qmake文档(一) qmake指南和概述
翻译qmake文档 目录 英文文档连接: http://qt-project.org/doc/qt-5/qmake-manual.html http://qt-project.org/doc/qt-5 ...
- 翻译qmake文档(二) Getting Started
翻译qmake文档 目录 原英文文档: http://qt-project.org/doc/qt-5/qmake-tutorial.html 本教程教讲授qmake基础知识.这个手册里 ...
- 翻译qmake文档 目录(四篇)
http://www.cnblogs.com/li-peng/p/4026133.html
- 中文翻译:pjsip文档(四)之ICE Session的使用方法
1:pjsip教程(一)之PJNATH简介 2:pjsip教程(二)之ICE穿越打洞:Interactive Connectivity Establishment简介 3:pjsip教程(三)之ICE ...
- Google翻译PDF文档
Google翻译PDF文档 翻译软件虽多如牛毛,但有关整段/全文翻译,堪用的软件极少, 涉及专业技术的文献.胜任翻译工作的人力稀缺.少不了project师讴心沥血. 由于多是PDF格式.即使要翻译个概 ...
- c#中操作word文档-四、对象模型
转自:http://blog.csdn.net/ruby97/article/details/7406806 Word对象模型 (.Net Perspective) 本文主要针对在Visual St ...
- 【swupdate文档 四】SWUpdate:使用默认解析器的语法和标记
SWUpdate:使用默认解析器的语法和标记 介绍 SWUpdate使用库"libconfig"作为镜像描述的默认解析器. 但是,可以扩展SWUpdate并添加一个自己的解析器, ...
随机推荐
- Mongodb Manual阅读笔记:CH4 管理
4 管理 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mongodb Manual阅读笔 ...
- mysql优化案例分析
本文总结了一些工作常见的sql优化例子,虽然比较简单,但很实用,希望对大家有所帮助.sql优化一般分为两类,一类是sql本身的优化,如何走到合适的索引,如何减少排序,减少逻辑读:另一类是sql本身没有 ...
- Storm系列(一):搭建dotNet开发Storm拓扑的环境
上篇博客比较了目前流行的计算框架特性,如果你是 Java 开发者,那么根据业务场景选择即可:但是如果你是 .Net 开发者,那么三者都不能拿来即用,至少在这篇文章出现之前是如此.基于上篇文章的比较发现 ...
- C++杂谈(三)产生随机数与time函数
产生随机数在程序中很有用,这篇文章简单介绍一下产生随机数的方法. 伪随机数 使用标准库<cstdlib>中的rand()函数产生随机数. #include<iostream> ...
- linux权限补充:rwt rwT rws rwS 特殊权限
众所周知,Linux的文件权限如: 777:666等,其实只要在相应的文件上加上UID的权限,就可以用到加权限人的身份去运行这个文件.所以我们只需要将bash复制出来到另一个地方,然后用root加上U ...
- android 获取本机SMI卡号码
//获取手机号码 TelephonyManager tm = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); S ...
- ES6新增值比较函数Object.is
在这之前我们比较值使用两等号 “==” 或 三等号“===”, 三等号更加严格,只要比较两方类型不同立即返回false. 另外,有且只有一个值不和自己相等,它是NaN 现在ES6又加了一个Object ...
- 台湾辅仁大学的python教程笔记
散记,因为主讲老师讲得也很乱..说课后的自习才是最重要的- 1.就这样,笔记看下.. 2. Modules 模组 很多模组放在一起就是一个packages 一个packages 一定有有__init_ ...
- sql中视图的作用
视图是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形式存在.行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态 ...
- SVN服务器&客户端的搭建和使用
目录结构: 1. SVN服务器搭建和使用-VisualSVNServer 2. SVN客户端安装和使用-TortoiseSVN 3. TortoiseSVN使用方法 SVN简介 SVN是Subvers ...