如何创建特定于发行版的条件qmake项目

时间:2012-04-10 17:36:37

标签: qt qmake libs

假设我在运行不同Linux发行版的2台计算机上编写代码。

如何让qmake区分这两个发行版并为这两个发行版分配特定的LIBS。

例如;

unix: {

   ubuntu*: {
          LIBS += -lcxcore -lhighgui -lm
   }

   gentoo*: {
           LIBS += -lopencv_imgproc -lopencv_highgui -lm
   }

}

1 个答案:

答案 0 :(得分:7)

我认为您可以运行“uname -a”并使用正则表达式检查.pro文件中的返回值:

UNAME = $$system(uname -a)

contains(UNAME, YourRegExpToMatchGentoo): GENTOO = 1
contains(UNAME, YourRegExpToMatchUbuntu): UBUNTU = 1

contains(GENTOO, 1): {
    LIBS += -lcxcore -lhighgui -lm
}

contains(UBUNTU, 1): {
    LIBS += -lopencv_imgproc -lopencv_highgui -lm
}