$$[QT\u HOST\u DATA/get]在QT功能配置(.prf)文件中做什么?
功能配置($$[QT\u HOST\u DATA/get]在QT功能配置(.prf)文件中做什么?,qt,configuration,qmake,Qt,Configuration,Qmake,功能配置(.prf)文件中使用的以下语法在哪里?定义: $$[QT_HOST_DATA/get] 我知道$$[…]要访问qtake属性,如Qt文档中所述,但是$[Qt\u HOST\u DATA/get]中的符号/get部分在哪里?它到底做了什么 另外,在Qt.conf文件中,include(对于其他.conf文件)和load()(对于.prf文件)之间有什么区别 如果include(some.conf)仅仅包含some.conf的内容,并将其粘贴到include.conf文件中,那么load
.prf
)文件中使用的以下语法在哪里?定义:
$$[QT_HOST_DATA/get]
我知道$$[…]
要访问qtake属性,如Qt文档中所述,但是$[Qt\u HOST\u DATA/get]
中的符号/get部分在哪里?它到底做了什么
另外,在Qt.conf
文件中,include(对于其他.conf
文件)和load()(对于.prf
文件)之间有什么区别
如果include(some.conf)
仅仅包含some.conf
的内容,并将其粘贴到include.conf
文件中,那么load()
到底做了什么
我没有找到有关.prf
文件结构的信息。
说明您可以创建.prf
文件,但没有说明这些文件的处理方式或结构
感谢您提供的任何澄清
$$[QT\u HOST\u DATA/get]中符号的/get部分在哪里?它到底做了什么
除了qmake源代码,没有其他地方。看起来所有qmake属性最多可能有四个特殊的“子周期”:xxx/dev xxx/src xxx/raw xxx/get
。然而,它们的用途却是个谜。执行qmake-query QT\u HOST\u DATA/get
生成(在我的机器上)与普通$$[QT\u HOST\u DATA]
相同的值
我没有找到有关.prf文件结构的信息
基本上,.prf只是“系统包含文件”。但有两点:
QMAKEFEATURES
变量所指向的已知位置QMAKEFEATURES
是一种“受保护变量”。我只是在(另一个未记录的)cache()函数的帮助下才设法更改它:
QMAKEFEATURES *= mydir # '*=' because of 3 passes under Windows
# 'transient' prevents creation file on disk
# only 'super' seems to work OK; no idea what's wrong with 'stash' or 'cache'
cache(QMAKEFEATURES, set transient super)
# now I can load .prf from <mydir> too...
QMAKEFEATURES*=mydir#'*='因为Windows下有3次通过
#“瞬态”阻止在磁盘上创建文件
#只有“超级”似乎可以工作;不知道“隐藏”或“缓存”有什么问题
缓存(QMAKEFEATURES,设置瞬态超级)
#现在我可以加载。prf从太。。。
通过在CONFIG
变量中提及Prf,可以隐式加载它。例如,CONFIG+=qt
(这是默认值,顺便说一句)导致包含/share/qt5/mkspecs/features/qt.prf
注意,这是在处理整个.pro之后发生的,因此.prf文件可用于后期处理用户选项
load()具体做什么
它只是专门为.prf设计的include()
版本。它所做的只是包含.prf文件。但是,与CONFIG+=xxx
不同,它会立即执行此操作,并且与普通的include()
不同,您不应该指定路径和扩展名
$$[QT\u HOST\u DATA/get]中符号的/get部分在哪里?它到底做了什么
除了qmake源代码,没有其他地方。看起来所有qmake属性最多可能有四个特殊的“子周期”:xxx/dev xxx/src xxx/raw xxx/get
。然而,它们的用途却是个谜。执行qmake-query QT\u HOST\u DATA/get
生成(在我的机器上)与普通$$[QT\u HOST\u DATA]
相同的值
我没有找到有关.prf文件结构的信息
基本上,.prf只是“系统包含文件”。但有两点:
所有.prf文件都位于QMAKEFEATURES
变量所指向的已知位置
顺便说一句,QMAKEFEATURES
是一种“受保护变量”。我只是在(另一个未记录的)cache()函数的帮助下才设法更改它:
QMAKEFEATURES *= mydir # '*=' because of 3 passes under Windows
# 'transient' prevents creation file on disk
# only 'super' seems to work OK; no idea what's wrong with 'stash' or 'cache'
cache(QMAKEFEATURES, set transient super)
# now I can load .prf from <mydir> too...
QMAKEFEATURES*=mydir#'*='因为Windows下有3次通过
#“瞬态”阻止在磁盘上创建文件
#只有“超级”似乎可以工作;不知道“隐藏”或“缓存”有什么问题
缓存(QMAKEFEATURES,设置瞬态超级)
#现在我可以加载。prf从太。。。
通过在CONFIG
变量中提及Prf,可以隐式加载它。例如,CONFIG+=qt
(这是默认值,顺便说一句)导致包含/share/qt5/mkspecs/features/qt.prf
注意,这是在处理整个.pro之后发生的,因此.prf文件可用于后期处理用户选项
load()具体做什么
它只是专门为.prf设计的include()
版本。它所做的只是包含.prf文件。但是,与CONFIG+=xxx
不同,它会立即执行此操作,并且与普通的include()
不同,您不应该指定路径和扩展名。太棒了!谢谢你的澄清,@Matt!令人惊叹的!谢谢你的澄清,@Matt!