macdeployqt 不复制QtWebView插件
macdeployqt does not copy the QtWebView plugin
我找不到通知 macdeployqt 我需要 QT_ROOT/qml/QtWebView/libdeclarative_webview.dylib 的方法复制到应用程序包中。这是在 QML 中使用本机 QtWebView 所必需的(配置 QT_WEBVIEW_PLUGIN=native)。有没有办法避免手动复制并改为依赖 macdeployqt?
请注意,库 QT_ROOT/plugins/webview/libqtwebview_darwin.dylib 已被正确识别并包含在包中。
项目使用cmake构建,Qt版本为5.15.2。基本步骤如下所示。
find_package(Qt5 REQUIRED COMPONENTS ... WebView)
target_link_libraries(${binary} ... Qt5::WebView)
execute_process(
COMMAND ${qt_root}/bin/macdeployqt
${CMAKE_INSTALL_PREFIX}/bin/my_app_bundle.app
-qmldir=${qt_root}/qml
)
问题在于滥用 qmldir 和 qmlimport。正确的调用是
execute_process(
COMMAND ${qt_root}/bin/macdeployqt
${CMAKE_INSTALL_PREFIX}/bin/my_app_bundle.app
-qmldir=${CMAKE_CURRENT_SOURCE_DIR}/quick_ui
-qmlimport=${qt_root}/qml
)
我找不到通知 macdeployqt 我需要 QT_ROOT/qml/QtWebView/libdeclarative_webview.dylib 的方法复制到应用程序包中。这是在 QML 中使用本机 QtWebView 所必需的(配置 QT_WEBVIEW_PLUGIN=native)。有没有办法避免手动复制并改为依赖 macdeployqt?
请注意,库 QT_ROOT/plugins/webview/libqtwebview_darwin.dylib 已被正确识别并包含在包中。
项目使用cmake构建,Qt版本为5.15.2。基本步骤如下所示。
find_package(Qt5 REQUIRED COMPONENTS ... WebView)
target_link_libraries(${binary} ... Qt5::WebView)
execute_process(
COMMAND ${qt_root}/bin/macdeployqt
${CMAKE_INSTALL_PREFIX}/bin/my_app_bundle.app
-qmldir=${qt_root}/qml
)
问题在于滥用 qmldir 和 qmlimport。正确的调用是
execute_process(
COMMAND ${qt_root}/bin/macdeployqt
${CMAKE_INSTALL_PREFIX}/bin/my_app_bundle.app
-qmldir=${CMAKE_CURRENT_SOURCE_DIR}/quick_ui
-qmlimport=${qt_root}/qml
)