Qt 如何将文件内容读入qmake变量并将其传递给编译器?

Qt 如何将文件内容读入qmake变量并将其传递给编译器?,qt,qmake,Qt,Qmake,如何将文件内容读入qmake项目文件中的变量?例如,我希望从文件中读取KEY的内容并将其传递给编译器: DEFINES += KEY=**some magic and filename here** 在所有平台上,都有一个内置的替换功能$$cat: # set a qmake variable KEY = "$$cat(/path/to/the/file)" # propagate the variable to C/C++ DEFINES += "KEY=\"$$KEY\"" 这一行的效果

如何将文件内容读入qmake项目文件中的变量?例如,我希望从文件中读取
KEY
的内容并将其传递给编译器:

DEFINES += KEY=**some magic and filename here**

在所有平台上,都有一个内置的替换功能
$$cat

# set a qmake variable
KEY = "$$cat(/path/to/the/file)"
# propagate the variable to C/C++
DEFINES += "KEY=\"$$KEY\""
这一行的效果与在每个翻译单元的开头添加以下行相同(主要是
.cpp
文件的花哨名称):

然后:

//源代码

qDebug()如果您的C/C++代码应该将键视为字符串,请添加单引号:
DEFINES+=“KEY=”\“$$KEY\”””
这避免了shell使用双引号,从而产生一些关于未定义变量或类似内容的奇怪错误消息。
#define KEY <contents of the file>
FOO
 // source
 qDebug() << KEY;
 // preprocessed source
 qDebug() << "FOO";