我碰到我的应用程序一个lib缺失问题就来了,事实证明,这可能与我的理解$$PWD
,并.
在QT项目的.pro文件.
这样做$$PWD
,.
两者都意味着dir,它包含.pro文件或dir,它是由构建过程生成的(如:**** - build-desktop-Qt_4_8_1_in_PATH__System__Debug).或者,它们意味着不同的东西.
在一些变量声明一样OBJECTS_DIR = obj/Obj
,它看起来就像是.
指产生的目录.然而,在HEADERS += remoteclient.h ./RealPlay/realplay.h \
,看起来这.
意味着包含.pro文件的目录.
它们在LIBS和DESTDIR等中的含义如何?
$$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 \
在这种情况下,它将是有效的搜索路径.否则,源外构建将无法正常工作.
请注意,.
在路径中间不执行任何操作.