Развертывание ПО с помощью cqtdeployer

Возникает небольшая проблема с деплоем ПО,где присутствуют qml файлы. Ни они, ни плагины не включаются в каталог проекта после установки с помощью cqtdeployer. Вероятнее всего я как то не так указываю аргументы

CMakeLists.txt:

cmake_minimum_required(VERSION 3.14)

project(control_activator LANGUAGES CXX)

set(CMAKE_INCLUDE_CURRENT_DIR ON)

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Network Quick Widgets Gui REQUIRED)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Quick Widgets Gui REQUIRED)
find_package(X11 REQUIRED)

find_package(PkgConfig REQUIRED)
pkg_check_modules(EVDEV libevdev REQUIRED)
pkg_check_modules(XFIXES Xfixes)
pkg_check_modules(XINPUT Xi)

include_directories(headers/)
include_directories(${EVDEV_INCLUDE_DIRS})

set(HEADER_DIR headers)
set(SOURCE_DIR sources)

set(CONFIG_FILES configs/config.json)

set(HEADER_FILES ${HEADER_DIR}/server_connector.h
                 ${HEADER_DIR}/mouse.h
                 ${HEADER_DIR}/qml_connector.h
                 ${HEADER_DIR}/configs.h
                 ${HEADER_DIR}/x11_space.h
                 ${HEADER_DIR}/keyboard.h)

set(SOURCE_FILES ${SOURCE_DIR}/server_connector.cpp
                 ${SOURCE_DIR}/qml_connector.cpp
                 ${SOURCE_DIR}/mouse.cpp
                 ${SOURCE_DIR}/configs.cpp
                 ${SOURCE_DIR}/x11_space.cpp
                 ${SOURCE_DIR}/keyboard.cpp)

qt_add_resources(SOURCE_FILES resources.qrc)

qt_add_executable(control_activator
    ${HEADER_FILES}
    ${SOURCE_FILES}
    ${CONFIG_FILES}
    main.cpp
    qml/main.qml
)

qt_add_qml_module(ActivatorQml
    URI control_activator
    VERSION 1.0
    QML_FILES qml/main.qml
)

target_link_libraries(control_activator PRIVATE
    Qt${QT_MAJOR_VERSION}::Core
    Qt${QT_MAJOR_VERSION}::Network
    Qt${QT_MAJOR_VERSION}::Quick
    Qt${QT_MAJOR_VERSION}::Widgets
    Qt${QT_MAJOR_VERSION}::Gui
    ${EVDEV_LIBRARIES}
    X11
    Xfixes
    Xi
)

А вот результат развертывания проекта:

azg3@azg3-G3-3590:~/projects/build-control_activator-aQt-Release$ cqtdeployer -bin control_activator -qmake /home/azg3/aQt/6.2.3/gcc_64/bin/qmake -qmlDir ./
Info: Deploy ...
Info: The targetDir option is not used. CQtDeployer will use default target dir :/home/azg3/projects/build-control_activator-aQt-Release/DistributionKit
Info: copy :/home/azg3/projects/build-control_activator-aQt-Release/control_activator
Warning: Failed to extract qml! The qt qml dir is not initialized!
Warning: Failed to copy standard Qt translations
Info: deploy done!
Info: copy :/home/azg3/projects/build-control_activator-aQt-Release/DistributionKit/tmp_data/Application/bin/control_activator
Info: copy :/home/azg3/projects/build-control_activator-aQt-Release/DistributionKit/tmp_data/Application/bin/qt.conf
Info: copy :/home/azg3/projects/build-control_activator-aQt-Release/DistributionKit/tmp_data/Application/control_activator.sh

Каталог:

azg3@azg3-G3-3590:~/projects/build-control_activator-aQt-Release$ ls DistributionKit/
bin  control_activator.sh  Installercontrol_activator.run  Installercontrol_activator.run.md5
azg3@azg3-G3-3590:~/projects/build-control_activator-aQt-Release$ ls DistributionKit/bin
control_activator  qt.conf

Ответы (1 шт):

Автор решения: Andrey Yankovich

Вы ошиблись с опцией qmlDir она должна включать в себя рутовую директорию всех ваших qml файлов.

Пример

cqtdeployer -bin control_activator -qmake /home/azg3/aQt/6.2.3/gcc_64/bin/qmake -qmlDir ~/projects/control_activator-a

Так же если вы используете snap версию cqtdeployer - не забудьте про добавление разрешений.

sudo snap connect cqtdeployer:process-control
sudo snap connect cqtdeployer:removable-media
sudo snap connect cqtdeployer:system-backup

Подробнее смотрите документацию.

→ Ссылка