[Solved] Exe file does not run without QtCreator (Qt 5.0.1 and QtQuick 2.0)



  • I installed Qt 5.0.1 for Windows 32-bit (MinGW 4.7, 823 MB)

    Then I created simple Quick 2 application and compiled it. Application is located in the its folder, and apllication run from QtCreator. And I want to run this exe file without QtCreator. To do this, I copy the files from the C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin:
    Qt5Core.dll
    icuin49.dll
    libgcc_s_sjlj-1.dll
    libwinpthread-1.dll

    And then I get error:
    Точка входа в процедуру _ZN6icu_4910CharString15getAppendBufferEiiRiR10UErrorCode не найдена в библиотеке DLL icuuc49.dll

    Translate: The procedure entry point _ZN6icu_4910CharString15getAppendBufferEiiRiR10UErrorCode not found in library DLL icuuc49.dll

    !http://harrix.org/error1.png(Error)!

    If I copy the exe file to a folder C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin (where are all the dll), the program runs, but nothing shows:
    !http://harrix.org/error2.png(Error)!

    If I copy the exe file to a folder C:\Qt\Qt5.0.1\Tools\QtCreator\bin (where are all the dll), the program does not run:
    !http://harrix.org/error3.png(Error)!

    What to do? Where and what libraries to take the program to run?



  • Did u copy the dlls of QtQuick2.0 into exe folder?



  • [quote author="Mostafa Alizadeh" date="1360052106"]Did u copy the dlls of QtQuick2.0 into exe folder?[/quote]

    I copied the files to a exe folder: Qt5Core.dll, icuin49.dll, libgcc_s_sjlj-1.dll, libwinpthread-1.dll



  • if u used qtquick module so you have to copy dll's of QtQuick2 which is located in qml/QtQuick.2 folder



  • [quote author="Mostafa Alizadeh" date="1360052973"]if u used qtquick module so you have to copy dll's of QtQuick2 which is located in qml/QtQuick.2 folder[/quote]
    No, program does not run with there dll.



  • You have to copy dlls of every module that you used in your project including : QtCore module, QTGui module, ICU, QtQuick, ....


  • Moderators

    ICU does not keep binary compatibility. Maybe the MinGW package was built with a different version and the linker entries are invalid?

    Anyway, you probably also need to copy the platform plugin to plugins/platforms/qwindows.dll.



  • [quote author="Mostafa Alizadeh" date="1360053696"]You have to copy dlls of every module that you used in your project including : QtCore module, QTGui module, ICU, QtQuick, ....[/quote]

    [quote author="sierdzio" date="1360054444"]ICU does not keep binary compatibility. Maybe the MinGW package was built with a different version and the linker entries are invalid?

    Anyway, you probably also need to copy the platform plugin to plugins/platforms/qwindows.dll.[/quote]

    Now I have so list of dll:

    Qt5Core.dll
    icuin49.dll
    libgcc_s_sjlj-1.dll
    libwinpthread-1.dll
    libGLESv2.dll
    libstdc++-6.dll
    qminimal.dll
    Qt5Gui.dll
    Qt5Network.dll
    Qt5Qml.dll
    Qt5Quick.dll
    Qt5V8.dll
    qwindows.dll
    

    But program has problems with run yet. Dependency walker shows that the error that I described:

    _ZN6icu_4910CharString15getAppendBufferEiiRiR10UErrorCode

    When I copy all dll from C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin and from C:\Qt\Qt5.0.1\5.0.1\mingw47_32\plugins\platforms programs run, but nothing shows.
    !http://harrix.org/error2.png(Error)!


  • Moderators

    Platform plugin needs to be in plugins/platform folder or something similar. Please check that. You can also check system messages or hook your app to terminal to see what the output is. If Qt can't find the plugin, it will shout in cerr.



  • [quote author="sierdzio" date="1360067474"]Platform plugin needs to be in plugins/platform folder or something similar. Please check that. You can also check system messages or hook your app to terminal to see what the output is. If Qt can't find the plugin, it will shout in cerr.[/quote]

    I copy qwindows.dll and qminimal.dll in folder with program. And these libraries are located in the folder
    C:\Qt\Qt5.0.1\5.0.1\mingw47_32\plugins\platforms

    But program does not work. With dll from list program shows error _ZN6icu_4910CharString15getAppendBufferEiiRiR10UErrorCode. With all dll from C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin and from C:\Qt\Qt5.0.1\5.0.1\mingw47_32\plugins\platforms programs run, but nothing shows.

    I put the Qt 5.0.1 for Windows 32-bit (MinGW 4.7, 823 MB) on another computer and it has also created an Qt Quick 2.0 application. And the problem is the same.


  • Moderators

    [quote author="Harrix" date="1360067923"]I copy qwindows.dll and qminimal.dll in folder with program. [/quote]
    Yes, that is why I keep telling you it is wrong :) Copy it to <your app>/plugins/platforms.

    The error might come from ICU if was compiled with MSVC and MinGW linker points to wrong sections of the library.



  • [quote author="sierdzio" date="1360068157"][quote author="Harrix" date="1360067923"]I copy qwindows.dll and qminimal.dll in folder with program. [/quote]
    Yes, that is why I keep telling you it is wrong :) Copy it to <your app>/plugins/platforms.

    The error might come from ICU if was compiled with MSVC and MinGW linker points to wrong sections of the library.
    [/quote]

    Thank you so much! This is what was needed. And I forgot to add the folder with qml files.



  • I'm having a same problem. I've read what you gays talked and compose the directories like below. But, still, I got this error message when I try to run my application without Qt Creator.

    The procedure entry point _ZNKSt9exception4whatEv not found in library DLL libstdc++-6.dll

    Please, check my directories and tell me what I have to do more.

    /myApp.exe
    /libgcc_s_dw2-1.dll
    /libstdc++-6.dll
    /libwinpthread-1.dll
    /Qt5Core.dll
    /Qt5Gui.dll
    /Qt5Network.dll
    /Qt5Widgets.dll
    /plugins/platform/qwindows.dll
    /plugins/platform/qminimal.dll


  • Moderators

    [quote author="yckim" date="1390135860"]The procedure entry point _ZNKSt9exception4whatEv not found in library DLL libstdc++-6.dll[/quote]That means you are using the wrong versions of the MinGW DLLs. Where did you get them from?

    [quote author="yckim" date="1390135860"]/plugins/platform/qwindows.dll

    /plugins/platform/qminimal.dll[/quote]

    Remove the "plugins" layer.

    It's "platforms", not "platform"

    You only need qwindows.dll, not qminimal.dll

    It should be /platforms/qwindows.dll



  • [quote author="JKSH" date="1390136766"]That means you are using the wrong versions of the MinGW DLLs. Where did you get them from?[/quote]

    You are right. I just figured out that there are two libstdc++-6.dll on my computer. One is under \MinGW\bin(what caused the problem). The other one is under \Qt\Qt5.2.0\5.2.0\mingw48_32\bin, and it works fine!! Thanks.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.