当前位置:首页 > 芯闻号 > 充电吧
[导读]学习Qt时,发现有些知识看了不经常用就忘了,以下是书本上写的一些关于qmake的相关知识,自己看后,打算把一些经常用到的记下来,整理整理。Qt程序一般使用Qt提供的qmake工具来编译。qmake工具

学习Qt时,发现有些知识看了不经常用就忘了,以下是书本上写的一些关于qmake的相关知识,自己看后,打算把一些经常用到的记下来,整理整理。

Qt程序一般使用Qt提供的qmake工具来编译。

qmake工具可以使用与平台无关的.pro文件生成与平台相关的makefile。该工具包含了调用Qt内置代码生成工具(moc,uic,rcc)的必要逻辑规则。

 

可以在命令行下,输入qmake -project来生成平台无关的pro文件。

工程文件pro主要分为三种:app(单独的应用程序),lib(静态和动态库),subdirs(递归编译)。工程类型可以使用TEMPLATE变量来指定。

如: TEMPLATE = app(默认不指定的情况下是app工程)

对于app工程或者lib工程,有以下这些经常使用的变量:

HEADERS:指定C++头文件

SOURCES:指定C++实现文件

FORMS:指定需要uic处理的ui文件

RESOURCES:指定需要rcc处理的qrc文件

DEFINES:指定预定义预处理器符号

INCLUDEPATH:指定C++编译器搜索头文件路径

LIBS:指定工程要链接的库

CONFIG:指定工程配置和编译参数

QT:指定工程所要使用的Qt模块

VERSION:指定目标库版本号

TARGET:指定可执行文件或库的基本文件名,默认为当前目录名

DESTDIR:指定可执行文件放置的目录

DLLDESTDIR:指定目标库文件放置的目录


CONFIG:指定工程配置和编译参数

以下对CONFIG变量做主要介绍:

debug:编译有调试信息的可执行文件或则库

release:编译不具有调试信息可执行文件或者库(如果同时指定debug release时,只有debug有效)

warn_off:关闭大量警告,默认是打开的

qt:指应用程序使用Qt

dll:动态编译库

staticlib:静态编译库

plugin:编译一个插件

console:应用程序需要写控制台

当我们写CONFIG变量时,可以使用

如:CONFIG = qt release warn_off

或者CONFIG = qt

      CONFIG += release

      CONFIG += warn_off

当想要移除某个设置时:CONFIG -= warn_off

在pro文件里,可以使varName或者varName或者

{varName}来访问自己定义的变量,如

MyVersion = 1.2

FILE = 1.cpp

TARGET = improve$${MyVersion}

SOURCES = $$FILE

pro文件里,访问环境变量的用法是:$(varName)

pro文件里,访问Qt配置参数的用法:$$[varName]

在不同的编译平台上编译时,需要设定条件。如:

win32{

 SOURCES += 1.cpp

}else{

 SOURCES += 2.cpp

}

或者

win32:SOURCES += 3.cpp

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

苹果再次对中国市场采取了较为激进的促销手段,近日苹果天猫Apple Store官方旗舰店对iPhone 15系列开启新的优惠政策。5月20日20点至5月28日,叠加官方立减和苹果优惠券,iPhone 15系列最高优惠22...

关键字: iPhone 15 苹果

业内消息,昨天英伟达正式公布了 2025 财年第一财季(截至上月 28 日)的财报数据,一财季数据和二财季指引均大幅超出预期,当日盘后股价暴涨!与此同时,英伟达也官宣了拆股计划(一拆十股)。

关键字: 英伟达 AI 芯片 H200

新加坡2024年5月23日 /美通社/ -- VNG Digital Business旗下GreenNode已成为AI Cloud的关键参与者,推动了整个亚太地区的生成式AI发展。利用英伟达(Nvidia)的先进技术,G...

关键字: GREEN 英伟达 生成式AI GPU

北京2024年5月23日 /美通社/ -- 在美国波士顿举行的IBM年度旗舰活动THINK大会上,作为继续推进其业界领先的自动化产品组合的最新举措,IBM预告了一款名为IBM Concert的生成式AI工具。这款工具将于...

关键字: IBM 即将面世 应用程序

日本经济产业省和日本国土交通省近日联合发布了“日本汽车数字化转型战略”草案。面对电动汽车和高档汽车向软件定义汽车(SDV)的发展趋势,日本设定了两个阶段性目标

关键字: 日本汽车 电动汽车 数字化转型 软件定义汽车

新国标有效推进健康照明的落地与提升,瑞森半导体持续专注健康照明方案的研发,推出优于国标性能要求的方案

关键字: LED照明

上海2024年5月23日 /美通社/ -- 威联通®科技 (QNAP® Systems, Inc.) 今日宣布其 S3 物件存储方案 QuObjects 以 QTS 和 QuTS hero 两项 NAS 作业系统上通过...

关键字: 存储 数据管理 机器学习

神州泰岳宣布成为中国首批获得亚马逊云科技生成式AI能力认证的合作伙伴。作为业界领先的系统集成商和亚马逊云科技高级合作伙伴,神州泰岳利用亚马逊云科技全托管的机器学习服务Amazon SageMaker、全托管的生成式AI服...

关键字: 亚马逊 神州 生成式AI

业内消息,昨天拼多多盘前巨震后涨超 7%,报 155 美元/股,总市值达 2150 亿美元超越阿里巴巴,截至上一交易日收盘,阿里巴巴总市值报 2096 亿美元。今年 4 月份至今,拼多多股价涨幅达到 25.12%。

关键字: 拼多多 阿里巴巴

华为终端今日官宣,截至 2024 年第一季度,华为路由器产品发货量突破 1 亿台。

关键字: 华为 路由器
关闭
关闭