我应该如何将 Qt 私有标头添加到我的 CMakeLists.txt 中?
find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Quick QuickPrivate REQUIRED)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Quick QuickPrivate REQUIRED)
Run Code Online (Sandbox Code Playgroud)
如果您想使用“QTMOD”子模块的私有 API,则必须仅包含使用变量的标头:
Qt${QT_VERSION_MAJOR}QTMOD_INCLUDE_DIRS
Run Code Online (Sandbox Code Playgroud)
在你的情况下:
include_directories(${Qt${QT_VERSION_MAJOR}Quick_PRIVATE_INCLUDE_DIRS})
Run Code Online (Sandbox Code Playgroud)
注:不存在QuickPrivate
之前接受的答案截至最近无效。Qt6 有一个特殊的 CMake 目标用于启用私有标头。您只需要链接到它,即是 的私有标头的WidgetsPrivate
目标名称:Qt Widgets Module
target_link_libraries(untitled PRIVATE Qt${QT_VERSION_MAJOR}::WidgetsPrivate)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3677 次 |
最近记录: |