我想检测Qt版本是否在Windows上使用OpenGL或Angle,以使nmake install正常工作。这是我现在所拥有的,.pro文件的摘要:

GLTMP = $$[QT_HOST_PREFIX]
contains(GLTMP, ".*_opengl") {
    message(Detected OpenGL)
} else {
    message(Did not detect OpenGL so assuming Angle)
    # add Angle DLL files to INSTALLS
}

现在,这仅在QT_HOST_PREFIX实际上包含OpenGL版本的_opengl而不是Angle版本的C:\Qt\5.2.1\msvc2010_opengl时才有效(例如C:\Qt\5.2.1\msvc2010_openglnmake install),但是显然这不是很可靠。

有没有一种方法,它不依赖于路径字符串?

期望的结果是让Qmake生成正确的makefile,因此ojit_code做正确的事情。

最佳答案

contains(QT_CONFIG, angle)应该会给您正确的结果。

我知道问问题已经有一段时间了,但是我在寻找确切的东西时偶然发现了这个页面,并认为我可以帮助其他有相同问题的人:)

关于windows - 如何在qmake项目中检测Qt是OpenGL还是Angle版本?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29276192/

10-13 06:29