当前位置: 首页 > news >正文

晋中路桥建设集团网站网络营销做的比较好的企业

晋中路桥建设集团网站,网络营销做的比较好的企业,房屋建设网站,阿里云建设网站安全吗QMake 使用概述一、概述二、简单开始三、使应用程序可调试1. 添加平台特定的源文件2. 如果文件不存在,停止qmake3. 检查多个条件一、概述 本教程教你qmake的基础知识。qmake 其实就是一个自动化编译的流程控制文件,也是Qt程序的生成makefile的工具&…

QMake 使用概述

  • 一、概述
  • 二、简单开始
  • 三、使应用程序可调试
    • 1. 添加平台特定的源文件
    • 2. 如果文件不存在,停止qmake
    • 3. 检查多个条件

一、概述

本教程教你qmake的基础知识。qmake 其实就是一个自动化编译的流程控制文件,也是Qt程序的生成makefile的工具,qmake 其实就是来解析 Qt Pro文件的一个程序,基本上我们主要还是通过 编写 pro 工程文件,然后调用 qmake 命令来生成Makefile, 最后生成可执行文件的过程。qmake 其实就是和 cmake 一样的,生成一个Makefile 的工具。只是qmake 是qt 提供的一个跨平台 生成Makefile的软件,我一般也是用 qmake 多些,因为更简单些。

二、简单开始

让我们假设您刚刚完成了应用程序的基本实现,并创建了以下文件:

  • hello.cpp
  • hello.h
  • main.cpp

我们需要做的第一件事是添加告诉 qmake 作为开发项目一部分的源文件和头文件的行。

即是通过设置一些变量来完成的。

我们首先将源文件添加到项目文件中。为此,您需要使用 SOURCES 变量。只需用 SOURCES += 开始新一行,并在其后加上hello.cpp。你应该有这样的东西:

SOURCES += hello.cpp

我们可以对项目中的每个源文件重复这一步骤,直到得到如下结果:

SOURCES += hello.cpp
SOURCES += main.cpp

如果你更喜欢使用类似make的语法,你可以使用换行转义,就像这样:

SOURCES = hello.cpp \main.cpp

既然源文件已经在项目文件中列出,那么必须添加头文件。添加这些文件的方式与源文件完全相同,只是我们使用的变量名是 HEADERS

一旦你这样做了,你的项目文件应该看起来像这样:

HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

生成的目标名称将自动设置。它与项目文件名相同,但具有适合于平台的后缀。例如,如果项目文件名为 hello.pro 在Windows上目标是hello.exe,在Unix上目标是hello。

如果你想使用不同的名称,你可以在项目文件中通过 TARGET 来设置这个可执行文件名叫 helloworld :

TARGET = helloworld

完成的项目文件应该是这样的:

HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

下面生成这些的命令我们可以了解就行,基本上我们都是在GUI的Qt Creator IDE下开发,我们只需要点击 运行 按钮就能运行出结果啦。

现在可以使用qmake为应用程序生成Makefile。在命令行中,在项目目录中,键入以下命令:

qmake -o Makefile hello.pro

然后根据你使用的编译器输入make或nmake。

对于Visual Studio用户,qmake还可以生成Visual Studio项目文件。例如:

qmake -tp vc hello.pro

三、使应用程序可调试

应用程序的发布版本不包含任何调试符号或其他调试信息。在开发过程中,生成具有相关信息的应用程序的调试版本是很有用的。通过向项目文件中的 CONFIG 变量添加 debug ,可以轻松实现这一点。

例如:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp

像以前一样使用qmake生成Makefile。现在,在调试环境中运行应用程序时,您将获得有关应用程序的有用信息。

1. 添加平台特定的源文件

经过几个小时的编码之后,您可能已经开始了应用程序中特定于平台的部分,并决定将依赖于平台的代码分开。

现在有两个新文件要包含到项目文件中:helloin .cpp和hellounix.cpp。我们不能仅仅将这些文件添加到SOURCES变量中,因为这会将两个文件都放在Makefile中。因此,我们在这里需要做的是使用一个作用域,它将根据我们为哪个平台构建而被处理。

为Windows添加平台相关文件的简单作用域如下所示:

win32 {SOURCES += hellowin.cpp
}

当构建Windows时,qmake将helloin .cpp添加到源文件列表中。在为其他平台构建时,qmake会忽略它。现在剩下要做的就是为特定于unix的文件创建一个作用域。
当你这样做了,你的项目文件应该看起来像这样:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp# windows
win32 {SOURCES += hellowin.cpp
}# 类unix 包含 Linux
unix {SOURCES += hellounix.cpp
}

这个就是条件编译一样,也会像以前一样使用qmake生成Makefile。

2. 如果文件不存在,停止qmake

如果某个文件不存在,您可能不想创建Makefile。我们可以使用exists()函数来检查文件是否存在。我们可以使用error()函数停止qmake的处理。这与作用域的工作方式相同。只需将作用域条件替换为函数。一个名为main.cpp的文件的检查是这样的:

!exists( main.cpp ) {error( "No main.cpp file found" )
}

!符号用于否定测试。也就是说,如果文件存在,exists(main.cpp)为真,如果文件不存在,!exists(main.cpp)为真。

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将停止处理。

3. 检查多个条件

假设你使用的是Windows,你希望在命令行中运行应用程序时能够通过qDebug()看到语句输出。要查看输出,您必须使用适当的控制台设置构建应用程序。在Windows上,我们可以轻松地将console放在配置行中,在Makefile中包含此设置。然而,假设我们只想在Windows上运行且debug已经在配置行中时添加配置行。这需要使用两个嵌套作用域。首先创建一个作用域,然后在其中创建另一个作用域。将需要处理的设置放在第二个作用域中,如下所示:

win32 {debug {CONFIG += console}}

嵌套的作用域可以用冒号连接在一起,因此最终的项目文件如下所示:

CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cppwin32 {SOURCES += hellowin.cpp
}unix {SOURCES += hellounix.cpp
}!exists( main.cpp ) {error( "No main.cpp file found" )
}win32:debug {CONFIG += console
}
http://www.laogonggong.com/news/68463.html

相关文章:

  • 推荐微信网站建设做it的兼职网站有哪些
  • 学校资源网站 建设方案网站建设与维护的试卷
  • 建设一个农家乐网站刚开今天新开传奇网站
  • 建设宣传家乡的网站网站建设蓝色工匠
  • 有没有人与动物做的电影网站住建部证书查询大厅
  • 建设项目环境影响备案网站哪里有网站建设的文章
  • 上海品牌建站博客一号WordPress
  • 橙色大气风格网站模板wordpress 头条插件
  • 珠宝店网站项目网页设计如何建设游戏平台网站
  • 找私人做网站帮朋友做网站不给钱
  • 建设局网站投诉电话求个网站能用的
  • seo网站优化培训要多少钱佛山+网站建设
  • 怎么在网站底部添加备案号优化软件排行榜
  • easyUI网站开发建设信用卡官网网站
  • 钦州网站建设哪家便宜网络设计图纸是什么
  • 国家企业信用信息没有网站怎么做企业对企业的电子商务网站有哪些
  • 网站开发寻找潜在客户的途径seo优化网站推广
  • 私人为别人做网站违法问题小程序和公众号有什么区别
  • 宁德网站开发企业备案网站可以做论坛吗
  • 采购网站官网网站后台是做什么的
  • 网站建设的市场分析自己做软件的应用
  • 苏州大型网站建设公司外贸网站设计设计注意事项
  • 网站优化方法页面钉钉专业版多少钱
  • 建设企业官方网站企业登录麻涌镇网站建设公司
  • 电商网站建设实训报告心得怎么查网站外链
  • 重庆市住房和城乡建设厅官方网站查询长春网站建设加王道下拉
  • 南浔区城乡建设局网站泉州最专业微信网站建设开发
  • 网站建设服务包含内容js 网站开发
  • 商务网站建设的一般流程是什么意思xp系统做网站服务器
  • 高水平大学建设大学网站专业网站优化