我已成功使用Qt4一段时间了。我可以使用CMake命令,例如QT4_WRAP_CPP
,QT4_WRAP_UI
等。现在我已经安装了Qt5,但由于某种原因,Qt无法识别我的安装。我收到此错误。
CMake Error at /example/project/dir/build_target.cmake:102 (QT5_WRAP_CPP):
Unknown CMake command "QT5_WRAP_CPP".
我如何
答案 0 :(得分:3)
如果您使用FindQt3
或FindQt4
,它会找到Qt 3或4.使用FindQt
,它会尝试查找Qt 3或4,您可以指定DESIRED_QT_VERSION
(3或4)。目前使用CMake 3.5,它找不到Qt 5.
对于Qt 5,不再提供特定的查找命令,您必须查找Qt 5的特定部分,将其小部件与find_package(Qt5Widgets)
对齐。然后将该版本存储在Qt5Widgets_VERSION
。
另请参阅文档:http://doc.qt.io/qt-5/cmake-manual.html
为什么这么复杂?在过去,CMake试图为它支持的每个软件提供一个find *模块。模块列表增长迅速,每个新版本的Boost,Qt,Gtk等都需要测试和修改模块。这个系统没有扩展 现在,CMake更喜欢第三方软件本身提供的配置文件。直到Qt4 CMake提供了一个查找模块。从Qt 5开始,Qt提供配置文件。
通常使用CMake,您不会检查库是否正确安装。使用Autotools,这些检查常见但不适用于CMake。可能这些检查需要一些时间,用户有责任拥有工作库。