diff --git a/src/corelib/kernel/qcore_mac.mm b/src/corelib/kernel/qcore_mac.mm index 692c9fa6b5..7e45defc70 100644 --- a/src/corelib/kernel/qcore_mac.mm +++ b/src/corelib/kernel/qcore_mac.mm @@ -593,7 +593,9 @@ QMacVersion::VersionTuple QMacVersion::versionsForImage(const mach_header *machH ); }; - auto commandCursor = uintptr_t(machHeader) + sizeof(mach_header_64); + const bool is64Bit = machHeader->magic == MH_MAGIC_64 || machHeader->magic == MH_CIGAM_64; + auto commandCursor = uintptr_t(machHeader) + (is64Bit ? sizeof(mach_header_64) : sizeof(mach_header)); + for (uint32_t i = 0; i < machHeader->ncmds; ++i) { load_command *loadCommand = reinterpret_cast(commandCursor); if (loadCommand->cmd == LC_VERSION_MIN_MACOSX || loadCommand->cmd == LC_VERSION_MIN_IPHONEOS diff --git a/src/corelib/kernel/qcore_mac_p.h b/src/corelib/kernel/qcore_mac_p.h index 319b0379ad..02ea0aabdc 100644 --- a/src/corelib/kernel/qcore_mac_p.h +++ b/src/corelib/kernel/qcore_mac_p.h @@ -419,10 +419,6 @@ private: // ------------------------------------------------------------------------- -#if QT_POINTER_SIZE == 4 -#error "32-bit builds are not supported" -#endif - class Q_CORE_EXPORT QMacVersion { public: