$$ PWD和.在.t中的平均值

Hen*_*nry 8 qt qmake

我碰到我的应用程序一个lib缺失问题就来了,事实证明,这可能与我的理解$$PWD,并.在QT项目的.pro文件.

  1. 这样做$$PWD,.两者都意味着dir,它包含.pro文件dir,它是由构建过程生成的(如:**** - build-desktop-Qt_4_8_1_in_PATH__System__Debug).或者,它们意味着不同的东西.

  2. 在一些变量声明一样OBJECTS_DIR = obj/Obj,它看起来就像是.产生的目录.然而,在HEADERS += remoteclient.h ./RealPlay/realplay.h \,看起来这.意味着包含.pro文件的目录.

  3. 它们在LIBS和DESTDIR等中的含义如何?

juz*_*lin 8

$$PWD 表示当前文件(.pro或.pri)所在的目录.

它意味着相同的LIBS.我刚刚在我的项目中使用它:

LIBS += -L$$PWD/deps/android -lopenal
Run Code Online (Sandbox Code Playgroud)

.在.pro文件中没有任何特殊含义.它与Linux/Unix shell中的含义相同:当前的工作目录.如果您使用它LIBS,它很可能会引用正在运行link命令的构建目录..没有扩大.如果你说-L.链接器真的会得到-L.

HEADERS += remoteclient.h ./RealPlay/realplay.h \qmake 的情况下,将相对于这些路径处理,$$PWD因此无论是否存在都无关紧要..HEADERS += $$PWD/remoteclient.h $$PWD/./RealPlay/realplay.h \在这种情况下,它将是有效的搜索路径.否则,源外构建将无法正常工作.

请注意,.在路径中间不执行任何操作.