Important: Please read the Qt Code of Conduct -

[Solved] Is there a way to decide on the address model used for compilation of Qt

  • Finally I decided to do a 64 bit compilation of Qt with MinGW. I have downloaded the "Dual-target(32 & 64-bit) MinGW compilers for 32 and 64-bit windows" from "MinGWbuilds":
    Personally, I find it a bit puzzling that starting the compiler on a 64 bit system doesn't tell you what the target system is (32 or 64). Using the --version option does tell at least that this version 4.7.2, but no mentioning of dual-target. The same for --help. Quite a bit of digging through google unveiled the information of the memory model switches and the that the default mode is 64 bit.
    Certainly none of those complaints is Qt related. It would be merely a nice gesture of the MinGW guys to give more information when starting the compiler.
    Anyhow I followed "this recipe": and compiled Qt4.8.4 for the 64 bit target. However, at the end the build is not really distinguishing from any other Qt build. The naming of the root folder is what I have chosen and luckily I did not mess this up.

    But is there a way to tell that this build is for 64 bit targets?

    I guess qmake can. At least it requires libwinpthread-1.dll which is part of the dual-target mingw and not part of 32 bit only MinGW.

    Also the generated dlls. Is there a way to detect which version it is?
    One distinction I found is the sheer size of QtGuid4.dll of almost 500MB. This is doubling the size of the compilation with 32 bit MinGW.

  • The dependency walker shows with the icon which memory model is used. The right side of the icon shows a column with 64.

Log in to reply