Qt pro工程文件中判断宏定义是否存在
来源:互联网 发布:淘宝大学电商 编辑:程序博客网 时间:2024/05/24 00:52
学习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}来访问自己定义的变量,如
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
转自:http://www.cnblogs.com/braver/articles/1935891.html
转自:http://www.cnblogs.com/liushui-sky/p/5787716.html
- Qt pro工程文件中判断宏定义是否存在
- Qt pro工程文件中判断宏定义是否存在
- QT中判断文件是否存在
- qt工程中Pro文件
- 判断文件是否存在于当前工程包中
- Qt .pro工程文件
- Qt 工程 pro文件
- Qt 工程 pro文件
- qt判断文件是否存在,如果存在则删除
- QT工程 .pro文件中“QT+=”语句的意义
- sql中判断文件是否存在
- VC中判断文件是否存在
- Linux中判断文件是否存在
- shell脚本中判断文件是否存在
- 【shell】判断文件中是否存在字符串
- QT pro工程文件中添加pri文件以及其他pro工程文件
- 判断文件是否存在
- 判断文件是否存在
- Android二维码功能实现,在程序内嵌入ZXing项目
- centos安装mysql
- 抓包工具Charles的使用心得
- AutoCompleteTextView不输入字符获取提示以及相关焦点问
- 欢迎使用CSDN-markdown编辑器
- Qt pro工程文件中判断宏定义是否存在
- 1064. 朋友数(20)
- 大数据开源组件图谱
- android学习(十七) 使用Scene和Transition转换视图
- 利用openssl里的库函数进行AES的加解密—cbc
- android studio 提示 no debuggable process或者 no debuggable applications
- maven error in opening zip file
- 关于web跨域问题
- maven+eclipse搭建项目工程ssm整合(一)