我将一个qmake项目转换为cmake,除了相当于!versionAtLeast(QT_VERSION, 5.11): error("Use at least Qt version 5.11"
的那一部分之外,我能够使它工作。
这里的问题是我当前正在使用用户提供的变量-DQt5_PREFIX=/path/to/Qt5/prefix
来通知CMake Qt库的位置。在macOS中,默认情况下为/Applications/Qt5/5.xx.x/clang_64
。
我要在cmake脚本中实现的功能是按以下方式工作:
set(Qt_ROOT "/Applications/Qt")
GetQt5Prefix(Qt5_PREFIX ${Qt_ROOT} version_spec)
message("use Qt5 from ${Qt5_PREFIX}")
# suppose that in /Applications/Qt,
# I have three Qt: 5.11.2, 5.10.3 5.12.1
# the above will print "use Qt5 from"
# 5.12.1 if version_spec is 5
# 5.11.2 if version_spec is 5.11
# empty if version_spec is 5.10.1
到目前为止,我会想像一下此功能应该做的事
任何人都可以为以上1、2或3中的任何一个提供帮助吗?谢谢!