Unofficial MinGW-based build of Qt 5.0.0 is now available


  • Moderators

    Courtesy of Алексей Павлов (Alex) from the MinGW-builds project: http://lists.qt-project.org/pipermail/development/2012-December/008919.html

    FINAL UPDATE (2013-01-29):



  • Error (509)
    This account's public links are generating too much traffic and have been temporarily disabled!

    Any chance of a mirror link?

    Just compiled my program with qt5, though it's a nightmare for the dlls, i just cannot get it to run on another test machine with no qt, msvc etc installed...

    i miss the mingw where i just put some dlls in the same folder of the exe (and knew which were needed) and all was good :D



  • Same problem here, I built Qt5 with MSVC2012 and cannot get the exe to run on any other machine, and worst part is I get no error, even Dependency walker doesn't help.

    Maybe this build can be hosted here on the QtProject website? Dropbox ain't gonna work too good in this case...


  • Moderators

    When I manage to download a copy, I'll set up a mirror.

    In the meantime, this might help with general deployment on Windows: http://qt-project.org/forums/viewthread/23286/



  • Yeah, but still no success, I bundled the following DLLs:
    D3DCompiler_46.dll
    libEGL.dll
    libGLESv2.dll
    msvcp110.dll
    msvcr110.dll
    Qt5Core.dll
    Qt5Gui.dll
    Qt5Widgets.dll
    qwindows.dll

    No error, no nothing, the exe just doesn't start...


  • Moderators

    Is qwindows.dll in a subfolder ("platforms"), relative to the executable?

    Failing that... try dumping all the DLLs from C:<Qt>\bin\ (and all the folders in C:<Qt>\plugins) into the directory and see if it works :P

    (Hint: Instead of moving everything to the other PC to test, you can rename your Qt folder to temporarily hide Qt from your system, making it emulate a "Qt-less" machine)


  • Moderators

    Mirror is now available (see original post)



  • Checking it out. BTW I managed to get my deployment properly - turned out I wasn't using the "right" VC runtime DLL, got like 20 dlls and like 5-6 different versions.



  • It works, however, there is a HUGEEEEE performance difference when compared to MSVC and even to x86 Qt4 build.

    Qt5 MinGW x64:
    !http://i50.tinypic.com/2zs73tg.jpg(Qt5 MinGW 64)!

    Qt5 MSVC2012 x64:
    !http://i46.tinypic.com/rm8gaf.png(Qt5 MSVC2012 64)!

    Qt4 MinGW x86:
    !http://i50.tinypic.com/69l655.jpg(Qt4 MinGW 32)!

    I suspect there is something wrong with this build, it is not possible for MinGW to be almost 4 times slower than MSVC. And if anything, I expected this to be faster than 32bit Qt4 build, yet it is more than 2 times slower.



  • [quote author="utcenter" date="1357323191"]It works, however, there is a HUGEEEEE performance difference when compared to MSVC and even to x86 Qt4 build.

    Qt5 MinGW x64:
    !http://i50.tinypic.com/2zs73tg.jpg(Qt5 MinGW 64)!

    Qt5 MSVC2012 x64:
    !http://i46.tinypic.com/rm8gaf.png(Qt5 MSVC2012 64)!

    Qt4 MinGW x86:
    !http://i50.tinypic.com/69l655.jpg(Qt4 MinGW 32)!

    I suspect there is something wrong with this build, it is not possible for MinGW to be almost 4 times slower than MSVC. And if anything, I expected this to be faster than 32bit Qt4 build, yet it is more than 2 times slower.[/quote]

    Wow, that's... slow. Let's just hope for official MinGW...



  • I try to rebuild my builds of Qt5 for mingw with some optimization after 8th january and upload them. You can test perfomance again.



  • [quote author="alexpux" date="1357372790"]I try to rebuild my builds of Qt5 for mingw with some optimization after 8th january and upload them. You can test perfomance again.[/quote]

    I just finished my optimized SDK today. It's a -O3 -mtune=native for 64 bit and -O3 -mtune=i686 for 32 bit :)



  • Good :)
    But I now build with "-march=nocona -mtune=core2" for 64-bit and "-march=i686 -mtune=core2" for 32-bit. Next I try to build Qt5 with ANGLE.



  • [quote author="alexpux" date="1357372790"]I try to rebuild my builds of Qt5 for mingw with some optimization after 8th january and upload them. You can test perfomance again.[/quote]

    Hi, I've done some optimization to my algorithm - now MinGW performance is much better, but still somewhat lower than MSVC. In fact with the improved algorithm the MinGW version is a little faster than the old MSVC version. I wonder what could have caused performance to be so low before, the version of MinGW you have bundled should support all the C++11 features that increase performance, C++11 support in MinGW is a little better than that of MSVC2012. Anyway, here are the new results:

    Qt5 MSVC2012 ×64:
    !http://i50.tinypic.com/2vcja4j.jpg(MSVC)!

    Qt5 MinGW x64:
    !http://i49.tinypic.com/2uj6pmt.png(MinGW)!

    Now the performance difference is only 0.3x - much better than 4x. So the build is not that slow, as long as you code efficiently. It is still a little slower than Qt4 MinGW x86 - which gets 30 MCPS performance.



  • [quote author="utcenter" date="1357403992"][quote author="alexpux" date="1357372790"]I try to rebuild my builds of Qt5 for mingw with some optimization after 8th january and upload them. You can test perfomance again.[/quote]

    Hi, I've done some optimization to my algorithm - now MinGW performance is much better, but still somewhat lower than MSVC. In fact with the improved algorithm the MinGW version is a little faster than the old MSVC version. I wonder what could have caused performance to be so low before, the version of MinGW you have bundled should support all the C++11 features that increase performance, C++11 support in MinGW is a little better than that of MSVC2012. Anyway, here are the new results:

    Qt5 MSVC2012 ×64:
    !http://i50.tinypic.com/2vcja4j.jpg(MSVC)!

    Qt5 MinGW x64:
    !http://i49.tinypic.com/2uj6pmt.png(MinGW)!

    Now the performance difference is only 0.3x - much better than 4x. So the build is not that slow, as long as you code efficiently. It is still a little slower than Qt4 MinGW x86 - which gets 30 MCPS performance.[/quote]

    can you provide more information about your testing system? I can't agree with your results. I'm experiencing average 5% of speedup with MinGW x64 compared with MSVC 2012 :/

    My PC: intel Dual Core 2.4 GHz @ 4GB RAM ~ Windows 7 64 bit

    MinGW
    Optimization flags: "-O3 -mtune=native"
    Threading model: POSIX

    MSVC
    Optimization flags: "/Ox"



  • i7 3770k @ 4.5GHz, 16GB RAM, Windows 7 x64
    The MSVC build is 64bit, I haven't really set any optimization flags, so everything should be by default



  • My builds that uploaded to sourceforge.net are builded without any optimization.



  • Thanks for the pre-compiled package. I uncompress it and place it to c:/, and I am going to use the qt library in mingw. With qt4, I compile my source in mingw as

    ./configure --prefix=SOMEWHERE LIBS="-L /c/Qt/4.8.4/lib -lmingw32 -lqtmain -lQtGui4 -lQtCore4"
    make
    make install

    that is, the libraries flag qtmain, QtGui4 and QtCore4, etc. were setup well upon the installation of qt4. But with this pre-compiled package of qt5, obviously, it won't set it up, so what to do to make it work with pkg-config so the mingw know how to compile my
    code with qt dependency.

    BTW, I found three folders in the package, if I only need the mingw32 compilation, so I only have to copy everything inside mingw32 folder and place them to the mingw root folder, right?

    Thanks.


  • Moderators

    [quote author="mctree" date="1357441574"]BTW, I found three folders in the package, if I only need the mingw32 compilation, so I only have to copy everything inside mingw32 folder and place them to the mingw root folder, right?[/quote]Please read the note in the original post for installation instructions.



  • Hi all!
    I create new project on https://github.com/Alexpux/Qt-builds where is the set of scripts to build Qt5+QtCreator with all its prerequisites and dependencies under MSYS.



  • Thanks for the hard work on this. So far I have found the following issues.

    • doesn't work if user name (home directory) contains a space
    • toolchains_prepare doesn't unzip the downloaded files.


  • Do you change links to toolchains or use my links?



  • [quote author="alexpux" date="1358269379"]Do you change links to toolchains or use my links?[/quote]

    I used yours. The toolchains downloaded but there was no command in your script to unzip them.

    Currently the qt5 configure is failing, that might be because I changed some of the flags (I added -no-exceptions -no-rtti -no-stl)

    Update apparently -no-exceptions and -no-stl are no longer an option in qt5.



  • I am not aware of the current state of affairs, but Qt 5.0.1 repos were merged into stable a weak ago and should be pretty much finalized and can be found "here":http://releases.qt-project.org/digia/5.0.1/latest_successful/

    There is a MinGW version there for the impatient :)



  • I many work on my scripts and now I release version 0.2.0. I try to build 5.0.1 tomorrow.



  • Ok I do build of Qt-5.0.1 with QtCreator-2.6.1 for 32-bit. You can download it from http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/Qt-Builds/Qt-5.0.1-x32.7z/download


  • Moderators

    @alexpux: Thank you for being so helpful to Qt users! The Qt 5.0.1 release will contain an official MinGW-based build, so you can probably rest from compiling Qt after that :) Your scripts will be useful a long time to come though.

    Thanks again!



  • Ok I post here the last link for my build. This is 64-bit build for Qt-5.0.1 + QtCreator-2.6.1
    http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/Qt-Builds/Qt-5.0.1-x64.7z/download
    I f anyone need my builds later you can find them on http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/Qt-Builds. My plans to future is to add qbs and cmake to builds, and make installer or qpatch to make my builds relocatable.



  • I remove obsoleted SDK-x32 and SDK-x64 from links in first post. Instead they I upload my last release of Qt-5.0.0.
    Now my builds contains QBS and QDesktopComponents. And you can simply move Qt folder where you want by editing qt.conf file in <QTDIR>/bin directory.
    Also I now have static builds of Qt5.
    I will no longer update the information here.
    All information of my builds and next releases you can find:

    "Qt Wiki":http://qt-project.org/wiki/MinGW-64-bit

    "Builds page":http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/Qt-Builds

    "Scripts page":https://github.com/Alexpux/Qt-builds



  • Hello,

    I am facing problems when compiling my project with your pre-built package (Qt-5.0.1-x64.7z). Actually I have the exact same problem with my own compilation of qt5.0.1/mingw64. I am using this mingw: x64-4.7.2-release-posix-sjlj-rev8.7z. My application compiles fine with the official mingw32 release or msvc2010/32bits release, and even with my own qt5.0.1/msvc2012/64bits build. But I can't seem to be able to compile with qt5/mingw64...

    I have plenty of errors like that:
    [code]
    g++ -c -march=nocona -mtune=core2 -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_V5 -D_TTY_WIN_ -DQWT_DLL -DQT_DLL -D__TERRAIN_QPIXMAP -D__WIN_QTVLM -D_CRT_SECURE_NO_WARNINGS -DNOMINMAX -DQT_NO_DEBUG -DQT_XMLPATTERNS_LIB -DQT_MULTIMEDIA_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -DQT_NEEDS_QMAIN -I. -I"objs" -I"Dialogs" -I"libs\bzip2" -I"libs\zlib-1.2.7" -I"libs\qextserialport" -I"libs\qjson" -I"libs\nmealib\src\nmea" -I"libs\libbsb" -I"libs\miniunz" -I"libs\libgps" -I"." -I"......\Qt\Qt64-5.0.1\include" -I"......\Qt\Qt64-5.0.1\include\QtXmlPatterns" -I"......\Qt\Qt64-5.0.1\include\QtMultimedia" -I"......\Qt\Qt64-5.0.1\include\QtWidgets" -I"......\Qt\Qt64-5.0.1\include\QtXml" -I"......\Qt\Qt64-5.0.1\include\QtConcurrent" -I"......\Qt\Qt64-5.0.1\include\QtNetwork" -I"......\Qt\Qt64-5.0.1\include\QtGui" -I"......\Qt\Qt64-5.0.1\include\QtCore" -I"objs" -I"objs" -I"c:\Qt\Qt64-5.0.1\mkspecs\win32-g++" -o objs\DialogGraphicsParams.o Dialogs\DialogGraphicsParams.cpp
    In file included from c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/stddef.h:7:0,
    from c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/include/stddef.h:1,
    from ......\Qt\Qt64-5.0.1\include/QtCore/qglobal.h:46,
    (some similar lines removed)
    from Dialogs\DialogGraphicsParams.cpp:25:
    c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/crtdefs.h:26:9: error: 'size_t' does not name a type
    In file included from c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/include/stddef.h:1:0,
    from ......\Qt\Qt64-5.0.1\include/QtCore/qglobal.h:46,
    from ......\Qt\Qt64-5.0.1\include/QtGui/qwindowdefs.h:45,
    from ......\Qt\Qt64-5.0.1\include/QtWidgets/qwidget.h:45,
    from ......\Qt\Qt64-5.0.1\include/QtWidgets/qdialog.h:45,
    from ......\Qt\Qt64-5.0.1\include/QtWidgets/qmessagebox.h:45,
    from ......\Qt\Qt64-5.0.1\include/QtWidgets/QMessageBox:1,
    from Dialogs\DialogGraphicsParams.cpp:25:
    c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/stddef.h:20:3: error: 'errno_t' does not name a type
    c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/stddef.h:21:3: error: 'errno_t' does not name a type
    c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/stddef.h:26:18: error: 'uintptr_t' does not name a type
    c:\mingw\bin../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/include/stddef.h:151:1: error: '__MINGW_EXTENSION' does not name a type
    and so on...
    [/code]

    I have tried many things.. no way. Any idea what I am doing wrong with the setup?
    Thanks


Log in to reply
 

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