使用C ++插件(cmake)添加资源文件的QML应用程序

如何将qrc文件添加到“QML app with C ++ plugin(cmake)”项目? 我找不到工作指示。 我发现只有一件事,将其添加到CMakeLists.txt:

qt5_add_resources(RESOURCES modules/ProjectName/resources.qrc) 

有了这个,文件最终显示在Qt的文件树中,但显然编译后文件没有包含在可执行文件中,那么该做什么?

 qt5_add_resources(RESOURCES modules/ProjectName/resources.qrc) 

那件事将qrc文件转换成C ++文件。 C ++文件的名称存储在RESOURCES变量中。

通过在CMakeFiles.txt中使用add_executableadd_library ,可以从C ++文件编译可执行文件和库。 在“带有C ++插件(cmake)的QML应用程序”项目模板中,“C ++插件”部分表示库。 所以在CMakeFiles.txt的某个地方有一个add_library 。 应该在那里添加资源文件:

 add_library(Myappbackend MODULE ${Myappbackend_SRCS} ${RESOURCES} ) 

或者,qrc可以通过qt5_add_resources宏直接编译到单独的库中,或者根本不编译(因此根本没有qt5_add_resources ),并且在运行时由Qt应用程序加载(例如,请参阅核心ubuntu-terminal-app的源代码) 。

 set(CMAKE_AUTORCC ON) add_executable(${PROJECT_NAME} ${SRC_LIST} modules/ProjectName/resources.qrc)