这是什么$$ [QT_HOST_DATA / GET]做一个Qt功能配置文件(.prf)?

问题描述 投票:0回答:1

凡在功能配置(.prf)使用下面的语法文件?定义:

$$[QT_HOST_DATA/get]

我知道$$[ ... ]是访问作为Qt的文档解释QMAKE性能,但如果是/获得$$[QT_HOST_DATA/get]符号的一部分澄清?它有什么准确吗?

此外,Qt的.conf文件中,是什么include之间和load()的差别(其它.conf文件)(用于.prf文件)?

如果仅仅include(some.conf)在于some.conf的内容,从字面上粘贴到包括.conf文件,这是什么load()做什么呢?

我发现有关.prf文件的结构没有任何信息。 https://doc.qt.io/qt-5/qmake-advanced-usage.html说,你可以创建.prf文件,但没有任何有关这些文件是如何处理,或者应该说结构?

感谢您能提供任何澄清!

qt configuration qmake
1个回答
2
投票

其中是/获取在$$符号的一部分[QT_HOST_DATA /获取]澄清?它有什么准确吗?

不通,除了qmake的源代码。它看起来像所有QMAKE性质可能有高达四特“subproperies”:xxx/dev xxx/src xxx/raw xxx/get。然而,什么是他们使用是一个谜。执行qmake -query QT_HOST_DATA/get产生(在我的机器上)一样的值作为纯$$[QT_HOST_DATA]

我发现有关的.prf文件的结构没有任何信息。

基本上,的.prf只是“系统包含文件”。有两点,虽然:

  1. 所有的.prf文件驻留在由QMAKEFEATURES变量指向已知位置(一个或多个)。

BTW。 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...
  1. PRF可以通过CONFIG变量提的是隐式加载。例如,CONFIG += qt(这是默认,顺便说一句。)导致包括<SomePrefix>/share/qt5/mkspecs/features/qt.prf注意的,这发生在整个的.pro被加工后,使.prf文件可用于后处理用户选项。

什么呢负载()究竟做什么?

这只是专为的.prf的include()的版本。它所做的一切,它只是包含.prf文件。但是,与CONFIG += xxx,它这样做立即,并且不像普通include(),你不应该指定路径和扩展。

© www.soinside.com 2019 - 2024. All rights reserved.