我正在使用最新的CMake生成Xcode 11项目,以成功构建Qt Quick 2应用程序,我希望组织我的qml文件并允许将其移动到项目文件夹上方的文件夹中以进行重用。为此,我在CMake中设置了一个变量,并希望引用qrc文件以从该目录导入qml文件,但不知道如何在rcc命令中使用CMake变量。
在根目录下导入的CMake CMakeUtil.in
文件中,如下设置变量QML_RESOURCE_DIR
SET(QML_RESOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/qt/qml")
然后我要做的是将qrc文件设置为:
<RCC>
<qresource prefix="/">
<file>main.qml</file>
<file alias="CustomBevel.qml">${QML_RESOURCE_DIR}/CustomBevel.qml</file>
<file alias="CustomButton.qml">${QML_RESOURCE_DIR}/CustomButton.qml</file>
</qresource>
</RCC>
但这会导致错误
make: *** No rule to make target `/Users/project/apps/app5//CustomBevel.qml', needed by `/Users/project/build/apps/app5/EWIEGA46WW/qrc_qml.cpp'. Stop.
Command /bin/sh failed with exit code 2
我注意到//
似乎表明${QML_RESOURCE_DIR}
可能已转换为null。我尝试了$QML_RESOURCE_DIR
和$(QML_RESOURCE_DIR)
并得到了相同的结果。我找不到有关如何将CMake变量传递到RCC的任何信息。我确实看到了RCC的选项,但没有看到有关如何从CMAKE设置基本AUTORCC / RCC目录的文档。可能吗?