在 .pro 变量中添加扩展名
Add an extension in a .pro variable
我正在尝试使用 QMake 打印消息,但我遇到了扩展问题:
lib_name = $
message("test1: $$MYPATH/$$lib_name/src/$$lib_name.pri");
message("test2: $$MYPATH/$$lib_name/src/$$lib_name");
出于某种原因,test1
没有打印出正确的路径。它只打印 src/
之前的路径。但是,test2
没问题。它打印所有内容,直到 $
.
中的值
任何解决方法?
QMake 支持带有成员的变量(对象),可以使用点 .
运算符,例如target.path
对于 INSTALLS。因此,在您的情况下,$$lib_name.pri
意味着您正在访问 lib_name
的成员 pri
,该成员不存在,因此没有输出。
您需要将变量括在花括号中,以便 QMake 将它们与周围的文本区分开来,即 $${lib_name}.pri
。
示例:
message("test1: $$MYPATH/$$lib_name/src/$${lib_name}.pri");
# ~~~~~~~~~~~~
有关对象的更多示例,请参阅 Adding Custom Target and Adding Compilers sections of QMake's Advanced Usage 页。
这是另一个相关的 SO 线程:QMake - How to add and use a variable into the .pro file
我正在尝试使用 QMake 打印消息,但我遇到了扩展问题:
lib_name = $
message("test1: $$MYPATH/$$lib_name/src/$$lib_name.pri");
message("test2: $$MYPATH/$$lib_name/src/$$lib_name");
出于某种原因,test1
没有打印出正确的路径。它只打印 src/
之前的路径。但是,test2
没问题。它打印所有内容,直到 $
.
任何解决方法?
QMake 支持带有成员的变量(对象),可以使用点 .
运算符,例如target.path
对于 INSTALLS。因此,在您的情况下,$$lib_name.pri
意味着您正在访问 lib_name
的成员 pri
,该成员不存在,因此没有输出。
您需要将变量括在花括号中,以便 QMake 将它们与周围的文本区分开来,即 $${lib_name}.pri
。
示例:
message("test1: $$MYPATH/$$lib_name/src/$${lib_name}.pri");
# ~~~~~~~~~~~~
有关对象的更多示例,请参阅 Adding Custom Target and Adding Compilers sections of QMake's Advanced Usage 页。
这是另一个相关的 SO 线程:QMake - How to add and use a variable into the .pro file