Forums

OverviewV-Play 1 Support › Webview and webengine deployment

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #16301

    George kuria

    Hi guys,

     

    I have recently created an online shopping app and i wanted to deploy it on windows but there is a problem when i run my app in Qt it works perfectly yet when i deploy my app using windeployqt when i use webview ,when it reaches the part of pushing my application to webview the app crashes and when i use webengine the page wont open but doesnt crash . i am building my app for windows using MSCV2015 32bit comiler. When i copy the exe in bin directory of MSVC2015 32 bit compiler the program works fine both webview and webengine. i have tried using dependacy walker to meet all required dlls but still no success. I would really like help since i have to deploy the application within few days

    #16306

    Günther
    V-Play Team

    Hi George,

    sounds like some required dependency is not packaged correctly with windeployqt, but is available in MSVC bin directory.
    One suggestion from my side is to make sure the import statements for webview/webengine are in your Main.qml file. The windeployqt tool might miss the import and required dependencies if the module import is used in some sub-page of your application that is created dynamically at runtime.

    Does it help?

    Other than that, if tools like DependencyWalker to not give any hints to what’s missing, I suggest asking in the official Qt forums which dependency might be missing for webview.

    Cheers,
    Günther from V-Play

    #20790

    Bas

    hi I am trying to deploy a 64bit exe on windows 10, using windeployqt from the msvc2017_64/bin directory.

    After a few hours i gave up and dependency walker gave me no clues here.

    i did not compile the exe with resources, but copied the “qml” and “asset” directories in the same directory as the exe.

    when i am compiling/deploying for MingW, everything works, except that i have to copy some dlls in the directory to get everything working
    So my question for you V-play: What do you do to get a simple msvc2017 64bit project working? what files are in the directory aside windeploy.exe puts there?
    thanx,
    Bas

    #20791

    Bas

    well, actually i can see a lot of missing dll’s when i open dependencywalker.

    but i do not think i have to add so many dll’s to get it working?

    #20793

    Günther
    V-Play Team

    Hi Bas,

    windeployqt adds lots of DLLs for all required Qt modules and related dependencies of Qt.

    For this, the tool crawls your project’s QML sources to see which module imports are used. In case the tool is started wrongly or some QML files are not found and parsed, those imports and related DLLs might then miss in your build folder. To avoid this, it can help to add a list of all module imports directly to your Main.qml, to make sure the windeployqt tool finds these imports.

    Tools like dependency-crawler can also be indicators for which libraries are missing. To see the minimum footprint, you can try to compile and deploy a plain Qt app without further modules. V-Play requires some more modules like Qt multimedia, as V-Play components on them.

    I am not quite sure whether the V-Play Sample Launcher is currently build using the MSVC compiler, if this is the case you can also have a look at the DLLs that the SampleLauncher uses.

    Best,
    Günther

    #20794

    Bas

    hi Günther,

     

    i created a project with main.qml containing 1 scene with 1 coloured rectangle.

    just to be shure that would work without comlpex calls/dependencies.

    in qtcreator it works, so i am not shure why.

    maybe i can look at the process and check dependencies/dll’s there

     

    gr,

    Bas

    #20795

    Bas

    ok i see something here:

    in the build steps -> effective qmake call:

    C:\V-PlaySDK\5.11.1\msvc2017_64\bin\qmake.exe F:\qtprojects\test64bit\test64bit.pro -spec win32-msvc && C:/V-PlaySDK/Tools/QtCreator/bin/jom.exe qmake_all

     

    i see win32-msvc?

    i thought it was win64, also in the Event viewer i saw an error with Qt5Qml.dll… but probably it is a win32 exe trying to link to the 64bit versions of the dlls.

     

    gr,

    Bas

    #20801

    Günther
    V-Play Team

    Hi Bas,

    when you run an app from within Qt Creator, Qt Creator does not simply start the built exe. It uses certain environment variables/arguments/commands to make the installed Qt libraries of your installed SDK directly available for the app run. But this only works when testing in your system and environment from within Qt Creator. Your end-user won’t have V-Play/Qt installed in a certain path, so the libraries require to be added and packaged along with your app build.

    That is what the deploy tools for each platform are used for (e.g. windeployqt, macdeployqt, androideployqt, etc…).

    The qmake command is only the first step of the chain when you build an app. It creates the build-folder and generates required setup to build an app. After qmake is finished, the app gets built using the compiler of the platform you build for, which is MSVC in your case. Regardless of qmake and the used compiler, Qt libraries and dlls require to be bundled with the app.

    Best,
    Günther

Viewing 8 posts - 1 through 8 (of 8 total)

RSS feed for this thread

You must be logged in to reply to this topic.

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
FREE!
create apps
create games
cross platform
native performance
3rd party services
game network
multiplayer
level editor
easiest to learn
biggest time saving
best support