Windows MinGW, Qt5.4 entry point issue



  • Hi all, Hope you all had a great Christmas thus far.

    I'm using community edition under Windows with Qt5.4x (latest I believe). And the MinGW 32 bit compiler.

    I can build and run my app in the IDE with no issues. I'm having issues deploying the app under Windows 8.1 but I don't think the issue is Windows... By deploy I mean I'm moving the EXE and the depending DLLs to a Windows 8.1 machine and attempting to run it.

    I worked through the dependency list using Dependency Walker and I believe I've captured all the required DLLs. So far my app is very simple so I'm deploying:

    QT5CORE.DLL
    QT5GUI.DLL
    QT5WIDGETS.DLL
    LIBGCC_S_DW2-1.DLL
    LIBSTDC++6.DLL
    LIPWINPTHREAD-1.DLL
    ICUIN53.DLL
    ICUUC53.DLL
    ICUDT53.DLL

    Some of these were not referenced by DW. However running the EXE asked for them so I included them. With all of these in place and again the program runs on the same machine under the IDE I now get this error:

    @The procedure entry point __cxa_throw_bad_addray_new_length could not be located in the library <path>\qt5Core.dll.@

    Obviously this looks like I have a problem or issue in the code, but I see no messages, exceptions or errors while running it in the IDE. I began a process of elimination and starting removing various things but still no luck.

    My initial web searches are beginning to sort of point to a problem in MinGW. Anyone have any ideas?

    If I reconfigure the project for VS2013 and include the correct libs for that, my app runs just fine.

    Thanks in advance!



  • It looks like you may have picked up the wrong DLL(s). You should be deploying the DLLs from Qt\5.4\mingw491_32\bin and not those from Qt\Tools\QtCreator\bin (because these are built with MSVC).

    You also need to deploy the platform plugin from Qt\5.4\mingw491_32\plugins\platforms\qwindows.dl l to {path}/platforms/qwindows.dll. DW will only pick up the run time dynamically loaded dependencies if you run the target program in DW's profiling mode.

    See also:
    http://doc.qt.io/qt-5/windows-deployment.html#creating-the-application-package
    The default Qt5.4/MingW bundle is an OpenGL build and does not require the ANGLE libraries.



  • Thanks Chris,

    I'll check that out. You could be right... I'll bet I got the ones from bin.

    I have been studying the deployment stuff. Thanks for the reference.


  • Lifetime Qt Champion

    Hi,

    There's also this fine wiki "entry":http://qt-project.org/wiki/Deploy_an_Application_on_Windows that can help when deploying on windows



  • Excellent... Thanks I think I had the wrong DLLs.


  • Lifetime Qt Champion

    Generally it's because you are copying the Qt Creator's dlls rather than the dlls from the Qt version you are using.


Log in to reply
 

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