翻译qmake文档 目录

原英文文档: http://qt-project.org/doc/qt-5/qmake-tutorial.html
本教程教讲授qmake基础知识。这个手册里的其它专题包含更详细的使用qmke信息。
从简单开始
假设你已经完成了应用程序的基本实现,并且你创建了下边的文件:
    hello.cpphello.hmain.cpp

qt分布的目录 examples/qmake/tutorial 中,你可以找到这些文件。你只需要知道的另一件事是这个程序的安装程序是用Qt写的。首先,用你最喜欢的文本编辑工具,在examples/qmake/tutorial目录下建立hello.pro文件,第一件你需要做的事就是要添加一些代码,告诉qmak
哪些源文件和头文件是项目的一部分。
我们先把源文件添加到项目中,想要这样做你需要使用SOURCES变量。只需要用SOURCES +=新起一行再把hello.cpp写它后边。写完后的效果是这样:
SOURCES += hello.cpp

我们把项目里的每一个源文件都重复这样做,直到我们以如下方式结束:
SOURCES += hello.cpp
SOURCES += main.cpp

如果你喜欢使用Make-like语法,一口气列出所有的文件,你可以使用使用换行符,就像下边一样
SOURCES = hello.cpp \main.cpp

现在已经列出项目里所有的源文件,头文件也必需添加.添加头文件除了使用名称为HEADERS的变量外和添加源文件的方式是一样的。
    这样做后,你的项目文件看起来应该是这样的:
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

Target名称是自动设置的。它和项目名称是一样的,但会根据相关平台相添加后缀名,举个例子,如果这个项目文件叫hello.pro,这个目标在window平台上是hello.exe,在Unix平台上是hello。如果你想用不同的名字可以在项目文件里设置:
TARGET = helloworld

最后一步是设置CONFIG变量。因为这是Qt应用程序,我们需要把qt添加到CONFIG行,这样qmake会把相关的库连接,可以确保moc和uic构建行能包含到生成的Makefile里。
完成的项目文件应该像下面一样:
 CONFIG += qtHEADERS += hello.hSOURCES += hello.cppSOURCES += main.cpp

现在你可以为你的应用程序用qmake生成Makefile,在命令行里你项目目录下,写入命令行:
qmake -o Makefile hello.pro

然后根据你用的编译器输入make或者nmake.
对于使用Visual Studio用户,qmake也可以生成.dsp或者.vcproj,例如 :
qmake -tp vc hello.pro

可调试应用程序

     release版本的应用程序不包含任何debug符号和debug信息,开发期间给应用程序生成debug版本的相关信息是非常有用的。在项目文件里的CONFIG变量加上debug就可以轻松实现。
例如:
 CONFIG += qt debugHEADERS += hello.hSOURCES += hello.cppSOURCES += main.cpp

像之前一样使用qmake生成makefile,当你在debug环境下运行应用程序的时候你会得到很有用的信息
添加平台特有的源文件
写几个小时的代码后,你也许会开始为你的应用程序编写特定平台的部分,并坚持对不同的平台编写不能的代码。现在你有两个新文件要包含到项目中:hellowin.cpp和hellounix.cpp。当我们想把这两个文件放到Makefile里,不能只把这些文件添加到SOURCES变量。所以,我们需要做的是根据qmake运行的当前平台用使用相应的作用域进行处理。
将一个简单的作用域添加到依赖于windows平台的文件,就像下边这样:
win32 {SOURCES += hellowin.cpp}

所以如果qmake运行于window平台,它将把hellowin.cpp添加到源文件列表。如果qmake运行于其它平台,它会被简单的忽略。现在剩下需要做的事就是创建一个特定于Unix文件的作用域。
当你做完这些,你的项目看起来应该是这样的:
 CONFIG += qt debugHEADERS += hello.hSOURCES += hello.cppSOURCES += main.cppwin32 {SOURCES += hellowin.cpp}unix {SOURCES += hellounix.cpp}

就像之前一个使用qt生成Makefile
如果一个文件不存在,停止 qmake
如果某个文件不存在,你也许不希望生成Makefile。我们可以用exists()方法检查一个文件是否存在。用error()方法我们可以停止正在运行的qmake.这和作用域的工作方式是一样的。用这个方法简单的替换作用域条件。像下面一样检查main.cpp文件:
!exists( main.cpp ) {error( "No main.cpp file found" )
}

“!”是用来否定测试。像这样, exists(main.cpp)如果是ture那么这个文件存在,如果!exists(main.cpp)是ture那么这个文件不存在。
CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
win32 {SOURCES += hellowin.cpp
}
unix {SOURCES += hellounix.cpp
}
!exists( main.cpp ) {error( "No main.cpp file found" )
}

像之前一样使用qmake生成makefile。如果你临时重命名main.cpp,你将看到错误信息,qmake也会停止运行
多条件检查
假设你使用windows系统,当你运行程序的时候,想在命令行里看到qDebug()语句输出。要想看到输出,你必需用适当的控制台设置构建你的应用程序。我们可以简单的把console加入到CONFIG行,window平台的makefile里包含这个设置。然而,假设我们只想运行在window平台时并且debug已经添加到CONFIG行时才把console添加CONFIG行。这需要两个嵌套的作用域。先创建一个作用域,在它里面再创建另一个。把需要处理的设置放在第二个作用域里,像这样:
win32 {debug {CONFIG += console}
}

嵌套作用域可以使用冒号:连接在一起。最终的项目文件像下边一样:
CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
win32 {SOURCES += hellowin.cpp
}
unix {SOURCES += hellounix.cpp
}
!exists( main.cpp ) {error( "No main.cpp file found" )
}
win32:debug {CONFIG += console
}

就是这样,你现在已经完成了qmake的教程,准备好开始为你的开发项目编写项目文件吧。
本文转自lpxxn博客园博客,原文链接:http://www.cnblogs.com/li-peng/p/3980243.html,如需转载请自行联系原作者

翻译qmake文档(二) Getting Started相关推荐

  1. python翻译器怎么用_给宝宝用Python写个支持翻译PDF文档的小软件

    上次用Python写好翻译doc文档小软件后就展示给宝宝,我:"宝宝,过来给你个小软件" 她:"干什么用哒?" 我:"给你翻译Word文档的" ...

  2. 如何翻译Word文档?这几种方法很好用

    我们想要翻译Word文档,应该如何才能实现呢?Word文档是大家在日常办公中必不可少的一种文档格式,用来编辑.撰写方案.工作内容都是很好用的.但有时候遇见一些国外的客户,我们需要把文档翻译成英文来提交 ...

  3. 如何翻译整个文档呢?分享三个怎么翻译整个文档的方法

    在日常学习工作中,我们有时候会遇到整个文档都是外文的情况.如果遇到的是篇数较多的文档,将段落先复制再粘贴进翻译器里会非常的繁琐,同时也会降低我们的效率,而且有的翻译器出来的结果不怎么准确.其实,我们可 ...

  4. 如何翻译Word文档?分享几种翻译方法

    如何将Word文档里的内容进行翻译呢?Word文档大家在日常的办公中经常会使用到,有时候我们编辑好的文档,领导要求我们把内容翻译成英文发给客户,对于我们英语不好的小伙伴怎么办呢?一句句去查翻译又很麻烦 ...

  5. 计算机上word译文是啥,在电脑上怎么翻译word文档?

    原标题:在电脑上怎么翻译word文档? 电脑是我们在办公中使用最多的设备,有关于电脑上的操作大家了解多少呢?今天小编和大家分享一些翻译word文档的知识.还没有学到的小伙伴赶紧学习一下吧! 步骤一:在 ...

  6. 快速翻译PDF文档的免费方法

    您还在为翻译PDF文档而烦恼吗? 或者您通过某度搜索出来的文档翻译网站或者使用某些文档软件都需要注册会员或者充钱呢? 而且好多既不安全还不一定靠谱. 本文介绍的这种方法希望能够为您解决烦恼.此方法不涉 ...

  7. Word文档怎么翻译?翻译word文档简单步骤讲解

    将文档进行翻译是我们经常遇到的事情,市面上也出现了很多翻译文档的工具,但是使用起来总觉得不是那么好用,一款易上手的工具对我们来说是非常重要的,今天的课堂就是小编给大家分享使用工具将word文档进行翻译 ...

  8. 怎么翻译Word文档?这里有Word文档翻译小妙招

    Word文档你会翻译嘛?文字翻译对大家来说很简单,直接进行释义就好了,但是怎么翻译Word文档呢?今天小编就要带大家一起来了解下Word文档翻译的小妙招,感兴趣的不妨来看看,说不定哪天你真的会用到哦! ...

  9. pdf在线翻译_24个PDF在线小工具,免费在线翻译PDF文档。

    点击上方蓝色字关注我们! 最近工作看的英文文献比较多,而且一般都是PDF文档,所以最近我找了一些PDF翻译的东西,今天推荐的是一个在线翻译文档网站,它可以立即翻译任何文档格式为任意语言,并保持排版不变 ...

最新文章

  1. JDK 环境变量设置参考
  2. mathtype6在word2019中闪退的问题
  3. alembic生成数据库升级脚本
  4. java继承小程序_Java小程序---接口中抽象方法的实现(解决了JAVA语言不能多继承的问题)...
  5. anylogic和java,基于Anylogic的Java代码入门教程
  6. matlab2013b下载安装包以及安装教程
  7. 静态链接库和动态链接库
  8. java BBS论坛
  9. Go语言使用RabbitMQ
  10. 初学 Click 路由器
  11. Flutter 闪屏页实现
  12. 精通Groovy_B 循环, 范围, 集合, 映射, 闭包, 类, UT
  13. 省市区三级联动(带经纬度、离线地图)
  14. deepin系统更新node
  15. linux安装程序出现了问题,linux安装extundelete以及对遇到问题的解决
  16. 搜索算法——双向bfs
  17. 全国青少年软件编程等级考试scratch二级考试大纲+考点
  18. 今日所学(一) [当日学习内容检查,如果有误,望大家赐教]
  19. 优雅的使用tg机器人自动下载频道内文件
  20. 计算机手绘思维导图简单画法,思维导图简单画法 怎么画美观漂亮

热门文章

  1. IIS装好了无法访问localhost
  2. 浏览器一直不停的异步请求(环境:vs.net mvc)
  3. 软件测试用例设计方法-等价类划分法
  4. myfunc matlab,为matlab匿名函数设置’help’
  5. 利用指针数组计算2个3行4列矩阵的和_[剑指 Offer] 04. 二维数组中的查找
  6. 更快学习 JavaScript的6个思维技巧
  7. doc自动生成html,java web应用中自动生成文章html页面的实现.doc
  8. mongodb最多数据库_2020 年3 月数据库排行:前 10 整体下行,出新技术了?
  9. 调用模块里的action_初级测试人员进阶必备Python编码模块,看过的都说好
  10. 2017计算机湖北对口试题答案,2017年计算机专业对口考试试卷及答案