我想在两台不同的机器上运行我的程序,它们有两个不同的用户名和不同的库路径。我想根据从我的Qt .pro文件中的环境变量检测到的用户名定义LIBS,INCLUDEPATH和DEPENDPATH。有办法实现吗? 我正在使用Scientific Linux 6.5和Qt 5.3。 预先感谢。
答案 0 :(得分:1)
您可以使用$$(USER)
在qmake中获取用户env var。剩下要做的就是根据该值决定使用哪个。
简单的例子:
CURRENT_USER = $$(USER)
message("The current user is: $$CURRENT_USER")
equals(CURRENT_USER, "user1") {
LIBS += -L/first/path/lib -lstuff
INCLUDEPATH += /first/path/include
} else:equals(CURRENT_USER, "user2") {
LIBS += -L/second/path/lib -lstuff
INCLUDEPATH += /second/path/include
} //...
注意:例如,如果每个用户的图书馆都位于~/libs/mylib
中,您还可以执行以下操作:
LIBS += -L$$(HOME)/libs/mylib/lib -lstuff
INCLUDEPATH += $$(HOME)/libs/mylib/include