该 Qt 5 CMake手册 声明说 qt5_use_modules
不推荐使用宏:
这个宏已经过时了。请将target_link_libraries与IMPORTED目标一起使用。
......但是 qt5_use_modules
不只是简单地指定链接库:它指定包含目录,必要的编译标志等(请参阅上面链接文档中的完整描述)。
那么,假设那个变量 QTMODULES
包含一些应该用于项目的Qt模块列表,替换以下“已弃用”的CMake线的“推荐”方法是什么?
qt5_use_modules(${myProjectName} ${QTMODULES})
以下不起作用,主要是因为它不添加任何Qt包含路径:
target_link_libraries(${myProjectName} IMPORTED ${QTMODULES})
是吗? QTMODULES
变量需要手动迭代,以便 include_directories
可以为每个单独的模块名称调用吗?这似乎是向后退一步 qt5_use_modules
,这很简单,“只是有效”。我错过了什么吗?