3

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

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

例如;

unix: {

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

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

}
4

1 回答 1

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
}
于 2012-04-10T18:30:04.163 回答