[SOLVED] Qt Creator - Can't release always debug && Entry point not found in QtGui4.dll



  • Hi,

    I have already succeeded in compiling in release mode my project since then. But now, for no reasons, it always build it in : "...build-desktop-Qt_4_8_1_for_Desktop_-_MSVC2010__Qt_SDK__Release\debug\test.exe"

    I just changed the project compilation mode in the left bottom corner of the window to release, and it compiles in the debug directory instead of the release one... When I try to run the application manually in the directory, even with the mingwm10.dll, QtCore4.dll and QtGui4.dll, it throw me an error and ask me to add QtGuid4.dll to my directory. (which I think means that it was compiled in debug mode)

    Am I missing something ?


  • Moderators

    Try rerunning qmake for the project.

    I have the same problem on windows. When using the left buttons and changing from debug to release,


  • Lifetime Qt Champion

    Hi,

    Do you have a CONFIG += debug line somewhere in your project ?


  • Moderators

    I have filed a "bug report":https://bugreports.qt-project.org/browse/QTCREATORBUG-9972 on the issue. You may want to add more specifics if you have any.



  • "Try rerunning qmake for the project."

    How do I do that ? In Qt Creator ?

    "Do you have a CONFIG += debug line somewhere in your project ?"

    You mean in my .pro ? In my .pro, I only have the SOURCES and the HEADERS.

    "I have filed a bug report"

    Thanks :)



  • Ok, sounds better, I've changed the "debug" to "release" manually in Qt creator > Projects, Compilation steps, QMake configuration for compiling.

    Now, qmake call :

    qmake.exe C:...\test.pro -r -spec win32-msvc2010 "CONFIG+=release" "CONFIG+=declarative_debug"

    But I still have an issue : The enter point of the program is not found :

    "?doItemsLayout@TableView@@UAEXXZ is not found in the dynamic library QtGui4.dll".


  • Moderators

    You can rerun qmake in the projects pane which should be left to your editor window. You can go to the project and right click.
    You will see a new pull-down window showing several entries like:
    @
    Set <your project> as Active Project"
    Build
    Run qmake
    Deploy
    Run
    Rebuild
    Clean
    ...
    @

    "Run qmake" is what I meant.


  • Moderators

    [quote author="Elfayer" date="1376295640"]
    qmake.exe C:...\test.pro -r -spec win32-msvc2010 "CONFIG+=release" "CONFIG+=declarative_debug"
    [/quote]

    "CONFIG+=declarative_debug" should not be in there for a release mode compilation. It should be present only for debug mode compilations.



  • Here is what I have so far :
    http://imagesup.org/images11/1376304102-compilationconfig.png
    !http://imagesup.org/images11/1376304102-compilationconfig.png(pic1)!
    bq. You can go to the project and right click.

    And sorry, I didn't understand where you wanted me to right click.



  • I got this files in my release directory :

    !http://imagesup.org/images11/1376311990-releasefiles.png(pic1)!


  • Moderators

    You can display pictures directly in your post by using the "picture button.":http://qt-project.org/wiki/ForumHelp#b642e0c67b7a32cc0b833ea119693dce

    I have updated the picture links for you.

    See this picture below with the Projects pane. The project has a grey bar in background in this case. Place mouse cursor above and right click, you should see a menu opening:
    !http://db.tt/g45v2Esd(pic)!



  • bq. You can display pictures directly in your post

    I first did, but the picture is going in front of the profile.

    Ok, i've finally found and "run qmake". But the problem persist, I still have the error :
    “The entry point of procedure ?doItemsLayout@TableView@@UAEXXZ is not found in the dynamic library QtGui4.dll”


  • Moderators

    Hmmm...

    Looks like a mix up of dlls. Do you have several Qt versions on your machine?
    How do you start in release mode? Through creator?

    Saw your reference to mingwm10.dll in your first post. Do you mix mingw and msvc compilations?
    That is not going to work for sure. The binaries are not compatible. Also you cannot mix between versions of the same compiler (within versions of msvc or within versions of mingw).



  • You can see the parameters of my compilation above. I guess by the following picture that I have two versions of Qt and I'm compiling with Qt Creator.

    bq. Saw your reference to mingwm10.dll in your first post. Do you mix mingw and msvc compilations?

    Sorry, I don't know.

    !http://img4.hostingpics.net/pics/750639compilationInfo.png(info)!


  • Moderators

    Those are the ones assigned to your project.

    Go to "Tools"->"options"->"Build&Run" there you find the different "Qt versions", "Compilers" and "Kits" recognized by Qt creator.

    For your project handling you should do a complete rebuild of the project. Same place as you found "Run qmake" there should be "Clean" and "Rebuild". It would be good enough to run rebuild, but clean before does not hurt.



  • bq. Go to “Tools“>“options”>“Build&Run” there you find the different “Qt versions”, “Compilers” and “Kits” recognized by Qt creator.

    !http://img11.hostingpics.net/pics/946888compileOptions.png(compileInfo)!

    bq. For your project handling you should do a complete rebuild of the project. Same place as you found “Run qmake” there should be “Clean” and “Rebuild”. It would be good enough to run rebuild, but clean before does not hurt.

    This wont affect my .cpp files ?



  • bq. It would be good enough to run rebuild, but clean before does not hurt.

    I did, same error :
    “The entry point of procedure ?doItemsLayout@TableView@@UAEXXZ is not found in the dynamic library QtGui4.dll”

    I've found some topic on the same error on google, but I don't know what to do with it... It seems it come from the PATH environment :
    http://developer.nokia.com/Community/Discussion/showthread.php/229077-quot-Entry-Point-Not-Found-quot-problem
    http://stackoverflow.com/questions/11484000/qtgui4-dll-entry-point-not-found

    PS: Also see the previous message.


  • Moderators

    You have an old mingw version on your machine (3rd entry) not sure what is.

    "Clean" and "Rebuild" do affect only the generated files as .obj, libs, generated by the moc and ui stuff. You will keep your source. Otherwise something is completely wrong.


  • Moderators

    Those posts are referring in principle also to a mix up of libs.

    You can check your environment path in a cmd prompt, by typing "path" and pressing return. Typically the output will be fairly long. Check whether there is an entry pointing to the msvc2008 you have on your machine.

    Alternatively, you can go also to the Build&Run page of your project. At the bottom is "System environment". There is also the "path" of the environment. Again no msvc2008 is allowed. You have only Qt libs compiled for msvc2010, so you can use only this compiler.

    Check also for references to the mingw build in path. They have to be out as well.

    Check, if the msvc2010 compiler tool chain is assigned to msvc2010 Qt libs. Your menu is looking different from mine and it is not only the language. I assume that you have an old qt creator version (cannot have a look right away), consider updating to the newest one.



  • PATH = c:\Program Files (x86)\Microsoft F#\v4.0;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VSTSDB\Deploy;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools;
    c:\Windows\Microsoft.NET\Framework\v4.0.30319;
    c:\Windows\Microsoft.NET\Framework\v3.5;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\VCPackages;
    C:\Program Files (x86)\HTML Help Workshop;
    C:\Program Files (x86)\HTML Help Workshop;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Performance Tools;
    C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools;
    C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin;
    C:\QtSDK\Desktop\Qt\4.8.1\msvc2010\lib;
    C:\QtSDK\Desktop\Qt\4.8.1\msvc2010\bin;
    C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
    C:\Program Files (x86)\ATI Stream\bin\x86_64;
    C:\Program Files (x86)\ATI Stream\bin\x86;
    C:\Perl64\site\bin;
    C:\Perl64\bin;
    C:\Program Files\MiKTeX 2.9\miktex\bin\x64;
    C:\Windows\system32;
    C:\Windows;
    C:\Windows\System32\Wbem;
    C:\Windows\System32\WindowsPowerShell\v1.0;
    C:\Program Files\Broadcom\Broadcom 802.11\Driver;
    C:\Program Files\TortoiseSVN\bin;
    C:\Program Files (x86)\Common Files\MDL Shared\ISIS;
    C:\Program Files (x86)\Objective Caml\bin;
    c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn;
    c:\Program Files\Microsoft SQL Server\100\Tools\Binn;
    c:\Program Files\Microsoft SQL Server\100\DTS\Binn;
    C:\Program Files (x86)\OpenAFS\Common;
    C:\Program Files (x86)\OpenAFS\Client\Program;
    C:\Program Files\OpenAFS\Common;
    C:\Program Files (x86)\MIT\Kerberos\bin;
    C:\Program Files\OpenAFS\Client\Program;
    C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static

    How can I update my QtCreator? I tried to update from QtCreator in Help>Start update tool and it says "No updates available".
    I think I've downloaded it from the nokia developpemer web site.


  • Moderators

    You can download "Qt creator 2.8 from download page.":http://download.qt-project.org/official_releases/qtcreator/2.8/2.8.0/qt-creator-windows-opensource-2.8.0.exe

    You can also download and install "Qt 4.8.5 for msvc2010":http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-win-opensource-4.8.5-vs2010.exe from there.

    AFAIK the nokia page is outdated already for some time. Probably you might get some maintenance stuff for Nokia mobile programming, but I do really not know.

    Your path setting looks fine to me. The only thing I am noting is the MikTex 2.9 setting. This caused problem in my setup some time ago. However, this is fairly late in the path setting and IIRC the path variable is used from start to end.

    One last "stupid" thought, you are not trying to compile as 64 bit app?
    All I saw on previous pages is referring to 32 bit, so there is only a little chance.



  • bq. you are not trying to compile as 64 bit app?

    How can I know that ? Why would it be a problem ?

    I've downloaded your links, I don't have debug and can only release, but anyway, I'm having the same issue. I'm compiling, adding QtGui4.dll, QtCore4.dll and mingwm10.dll to the directory, and I still have the entry problem. This thing is making me mad...

    What do I have to do with "Qt 4.8.5 for msvc2010" ? Anything dor the compilation ?

    Here is the new PATH with " Qt creator 2.8" :
    C:\QtSDK\Desktop\Qt\4.8.1\msvc2010\bin;
    c:\Program Files (x86)\Microsoft F#\v4.0;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VSTSDB\Deploy;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools;
    c:\Windows\Microsoft.NET\Framework\v4.0.30319;
    c:\Windows\Microsoft.NET\Framework\v3.5;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\VCPackages;
    C:\Program Files (x86)\HTML Help Workshop;
    C:\Program Files (x86)\HTML Help Workshop;
    c:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Performance Tools;
    C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools;
    C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin;
    C:\Program Files (x86)\Google\Chrome\Application;
    C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
    C:\Program Files (x86)\ATI Stream\bin\x86_64;
    C:\Program Files (x86)\ATI Stream\bin\x86;
    C:\Perl64\site\bin;
    C:\Perl64\bin;
    C:\Program Files\MiKTeX 2.9\miktex\bin\x64;
    C:\Windows\system32;
    C:\Windows;
    C:\Windows\System32\Wbem;
    C:\Windows\System32\WindowsPowerShell\v1.0;
    C:\Program Files\Broadcom\Broadcom 802.11\Driver;
    C:\Program Files\TortoiseSVN\bin;
    C:\Program Files (x86)\Common Files\MDL Shared\ISIS;
    C:\Program Files (x86)\Objective Caml\bin;
    c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn;
    c:\Program Files\Microsoft SQL Server\100\Tools\Binn;
    c:\Program Files\Microsoft SQL Server\100\DTS\Binn;
    C:\Program Files (x86)\OpenAFS\Common;
    C:\Program Files (x86)\OpenAFS\Client\Program;
    C:\Program Files\OpenAFS\Common;
    C:\Program Files (x86)\MIT\Kerberos\bin;
    C:\Program Files\OpenAFS\Client\Program;
    C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static



  • Well well, this is working with the QtGui4.dll and QtCore4.dll of the new Qt Creator. Still, I'd like to understand what happened, what do I have to keep and what can I uninstall.

    The release is in 4.8.1 not 4.8.5, like the version you told me to download, how do I change it (if I have to, or do I uninstall it ?). When I remove the "mingwm10.dll" file from my release directory, it still work. So what is this file for ? What are the moc_file.cpp/.obj for ?

    I have an error with the new Qt creator 2.8 for the debug, to I have to parameter something ?

    For a release what do I need, only the .exe, the QtGui4.dll and QtCore4.dll ?

    Thanks a lot for your help ! ;)


  • Moderators

    [quote author="Elfayer" date="1376334025"]bq. you are not trying to compile as 64 bit app?

    How can I know that ? Why would it be a problem ?
    [/quote]
    You cannot mix 32 bit and 64 bit compilations. You have to keep this separate.

    [quote author="Elfayer" date="1376334025"]
    What do I have to do with "Qt 4.8.5 for msvc2010" ? Anything dor the compilation ?
    [/quote]
    This would be yet another, but updated version of Qt libs. Just in case if anything is wrong with the other versions. This is fresh and presumably it has to work.
    It is your decision if you want to update or not.

    [quote author="Elfayer" date="1376334025"]
    I'm having the same issue. I'm compiling, adding QtGui4.dll, QtCore4.dll and mingwm10.dll to the directory, and I still have the entry problem. This thing is making me mad...
    [/quote]
    Do not copy dlls right away to the release folder where your exe is. When your compilation is correct, You can start it also as release in creator using the green arrow on the left. This runs only your application. It should make that all required dlls are found at their appropriate places. When I am doing this it has only the executable there.

    When you start copying dlls there, you might copy the wrong ones and we are doing the next circle.

    When you have checked that the release compiled version is starting correctly when pressing the green arrow button "run" on the left, you can enter the next step.


Log in to reply
 

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