리소스 파일을 추가하는 C++ 플러그인(cmake)이 포함된 QML 앱

리소스 파일을 추가하는 C++ 플러그인(cmake)이 포함된 QML 앱

"C++ 플러그인이 포함된 QML 앱(cmake)" 프로젝트에 qrc 파일을 추가하는 방법은 무엇입니까? 작업 지침을 찾을 수 없습니다. 한 가지만 찾았습니다. CMakeLists.txt에 다음을 추가하세요.

qt5_add_resources(RESOURCES modules/ProjectName/resources.qrc)

이것으로 파일은 마침내 Qt의 파일 트리에 표시되지만 컴파일 후 파일이 실행 파일에 포함되지 않은 것이 분명하므로 어떻게 해야 합니까?

답변1

qt5_add_resources(RESOURCES modules/ProjectName/resources.qrc)

그것은 qrc 파일을 C++ 파일로 변환합니다. C++ 파일 이름은 RESOURCES 변수에 저장됩니다.

실행 파일과 라이브러리는 다음을 사용하여 C++ 파일에서 컴파일됩니다.add_executable그리고add_libraryCMakeFiles.txt에 있습니다. "C++ 플러그인이 포함된 QML 앱(cmake)" 프로젝트 템플릿에서 "C++ 플러그인" 부분은 라이브러리를 의미합니다. 따라서 CMakeFiles.txt 어딘가에add_library. 여기에 리소스 파일을 추가해야 합니다.

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

또는 qrc를 다음을 통해 별도의 라이브러리로 직접 컴파일할 수 있습니다.qt5_add_resources매크로이거나 전혀 컴파일되지 않았습니다(따라서qt5_add_resources전혀) 런타임에 Qt 애플리케이션에 의해 로드됩니다(예를 들어 핵심 ubuntu-terminal-app 소스 참조).

답변2

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

관련 정보