0

QT_ROOT/qml/QtWebView/ libdeclarative_webview.dylibをアプリ バンドルにコピーする必要があることを macdeployqt に通知する方法が見つかりませんでした。これは、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
)
4

1 に答える 1

1

問題は、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
)
于 2021-07-06T06:02:16.770 に答える