qmake 之 CONFIG(debug, debug|release)
来源:互联网 发布:淘宝麻辣小龙虾 编辑:程序博客网 时间:2024/06/06 07:17
qmake 之 CONFIG(debug, debug|release)
在 Qt 编程中,多数人用的都是 qmake,并编写相应pro文件。
实际中经常需要对 debug 与 release 两种编译模式 设置不同的选项,比方说链接不同库
遇到该问题,简单看看qmake的manual,不少人都会写出类似下面的内容:
debug {LIBS += -L../lib1 -lhellod
}
release {
LIBS += -L../lib2 -lhello
}
很不幸,这么做通常不能正常工作。
如果打开看生成的makefile文件,会发现 无论是debug还是release,上面的两个语句都会同时起作用。也就是说,上面相当于
LIBS += -L../lib1 -lhellod -L../lib2 -lhello原因这是很违反直觉的,因为CONFIG可以同时定义 debug 和 release,但只有一个处于active(当两个互斥的值出现时,最后设置的处于active状态)
比如:
CONFIG = debugCONFIG += release
...
这种情况下,release处于active状态,但,debug 和 release 都能通过上面的测试。
如何解决CONFIG(debug, debug|release) {LIBS += -L../lib1 -lhellod
} else {
LIBS += -L../lib2 -lhello
}
或
CONFIG(debug, debug|release):LIBS += -L../lib1 -lhellodCONFIG(release, debug|release):LIBS += -L../lib2 -lhello
那么,CONFIG(debug, debug|release) 这种语法是什么含义呢?
两个参数,前者是要判断的active的选项,后者是互斥的选项的一个集合。
参考http://doc.trolltech.com/latest/qmake-function-reference.html#config-config
http://developer.qt.nokia.com/faq/answer/what_does_the_syntax_configdebugdebugrelease_mean_what_does_the_1st_argumen
http://www.qtcentre.org/threads/28049-qmake-Project-file-has-both-quot-debug-quot-and-quot-release-quot-conditions-true
http://stackoverflow.com/questions/1130106/linking-with-a-debug-release-lib-with-qmake-qt-creator
- qmake 之 CONFIG(debug, debug|release)
- qmake 之 CONFIG(debug, debug|release)
- qt条件编译debug和release版本--qmake之CONFIG(debug, debug|release)
- qt条件编译debug和release版本--qmake之CONFIG(debug, debug|release)
- qmake编译选项的控制(debug|release)
- qDebug()的输出控制及qmake的debug和release
- Debug和Release之区别
- Debug和Release之区别
- Debug和Release之区别
- Debug和Release之区别
- release debug
- 为Debug和Release分别设置Web.config
- 为Debug和Release分别设置Web.config
- Debug和Release之本质区别
- Debug和Release之本质区别
- Debug和Release之本质区别
- Debug和Release之本质区别
- 关于Debug和Release之本质区别
- 判断大小端的实现
- 甲骨文与VMware开启SDN时代
- aix察看根目录各文件和子目录大小,去除文件系统统计
- FL2440 Uboot移植问题
- Codeforces Round #143 (Div. 2)
- qmake 之 CONFIG(debug, debug|release)
- C++中数据共享的实现机制
- 360宽带测速至少在我的网络环境里有设计缺陷
- MSVC、Mingw与动态链接库
- DVB-S信号流程图
- c语言socket编程指南
- Qt在Windows下的入口点函数
- 【转】武大张卢腾448分考研真实经历
- 手工清除severe.exe病毒