Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Can't get the debugger to work on Qt6 + Apple M1 (arm).



  • I've finally managed to get my software over to Qt 6.0.0 and Apple M1, but I've yet to get the debugger working a single time. I basically get a "debugging starts" following by a "debugging ends" with a red signal, and nothing happens.

    lldb from command line works and debugs the application (but has problems showing source code, only assembler instead).

    It should be noted that I've compiled Qt 6.0.0 for arm from scratch, and I'm suspecting this might have something to do with the issue?

    Brand new apple MacBook Air m1, latest version of Xcode.

    Debug window output:

    wNote: This log contains possibly confidential information about your machine, environment variables, in-memory data of the processes you are debugging, and more. It is never transferred over the internet by Qt Creator, and only stored to disk if you manually use the respective option from the context menu, or through mechanisms that are not under the control of Qt Creator's Debugger plugin, for instance in swap files, or other plugins you might use.
    wYou may be asked to share the contents of this log when reporting bugs related to debugger operation. In this case, make sure your submission does not contain data you do not want to or you are not allowed to share.
    w
    dStart parameters: 'TRSE' mode: 1
    dABI: arm-darwin-generic-mach_o-64bit
    dLanguages: c++
    dExecutable: /Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse
    dDirectory: /Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS
    dDebugger: /Library/Developer/CommandLineTools/usr/bin/lldb
    dProject: /Users/leuat/code/TRSE
    dAdditional Search Directories:
    dSysroot:
    dDebug Source Location:
    dDebugger settings:
    dCDB2/AdditionalArguments: (default: )
    dCDB2/BreakEvent: (default: )
    dCDB2/BreakOnCrtDbgReport: false (default: false)
    dCDB2/BreakpointCorrection: true (default: true)
    dCDB2/CDB_Console: false (default: false)
    dCDB2/FirstChanceExceptionTaskEntry: true (default: true)
    dCDB2/IgnoreFirstChanceAccessViolation: false (default: false)
    dCDB2/SecondChanceExceptionTaskEntry: true (default: true)
    dCDB2/SourcePaths: (default: )
    dCDB2/SymbolPaths: (default: )
    dCDB2/UsePythonDumper: true (default: true)
    dDebugMode/AdjustBreakpointLocations: true (default: true)
    dDebugMode/AllPluginBreakpoints: true (default: true)
    dDebugMode/AlwaysAdjustColumnWidths: true (default: true)
    dDebugMode/AutoDerefPointers: true (default: true)
    dDebugMode/AutoEnrichParameters: true (default: true)
    dDebugMode/AutoQuit: false (default: false)
    dDebugMode/BreakOnAbort: false (default: false)
    dDebugMode/BreakOnCatch: false (default: false)
    dDebugMode/BreakOnFatal: false (default: false)
    dDebugMode/BreakOnThrow: false (default: false)
    dDebugMode/BreakOnWarning: false (default: false)
    dDebugMode/BreakpointsFullPath: false (default: false)
    dDebugMode/CloseBuffersOnExit: false (default: false)
    dDebugMode/CloseMemoryBuffersOnExit: true (default: true)
    dDebugMode/DisplayStringLimit: 100 (default: 100)
    dDebugMode/EnableReverseDebugging: false (default: false)
    dDebugMode/ExtraDumperFile: (default: )
    dDebugMode/FontSizeFollowsEditor: false (default: false)
    dDebugMode/GdbCustomDumperCommands: (default: )
    dDebugMode/GdbPostAttachCommands: (default: )
    dDebugMode/GdbStartupCommands: (default: )
    dDebugMode/IntelFlavor: false (default: false)
    dDebugMode/LoadGdbDumpers2: false (default: false)
    dDebugMode/LoadGdbInit: true (default: true)
    dDebugMode/LogTimeStamps: false (default: false)
    dDebugMode/MaximalStackDepth: 20 (default: 20)
    dDebugMode/MaximalStringLength: 10000 (default: 10000)
    dDebugMode/MultiInferior: false (default: false)
    dDebugMode/NoPluginBreakpoints: false (default: false)
    dDebugMode/RaiseOnInterrupt: true (default: true)
    dDebugMode/SelectedPluginBreakpoints: false (default: false)
    dDebugMode/SelectedPluginBreakpointsPattern: .* (default: .*)
    dDebugMode/ShowQObjectNames2: true (default: true)
    dDebugMode/ShowQmlObjectTree: true (default: true)
    dDebugMode/ShowQtNamespace: true (default: true)
    dDebugMode/ShowStandardNamespace: true (default: true)
    dDebugMode/ShowThreadNames: false (default: false)
    dDebugMode/SkipKnownFrames: false (default: false)
    dDebugMode/SortStructMembers: true (default: true)
    dDebugMode/StationaryEditorWhileStepping: false (default: false)
    dDebugMode/SwitchModeOnExit: false (default: false)
    dDebugMode/TargetAsync: false (default: false)
    dDebugMode/UseAlternatingRowColours: false (default: false)
    dDebugMode/UseCodeModel: true (default: true)
    dDebugMode/UseDebuggingHelper: true (default: true)
    dDebugMode/UseDynamicType: true (default: true)
    dDebugMode/UseMessageBoxForSignals: true (default: true)
    dDebugMode/UseToolTips: true (default: true)
    dDebugMode/UseToolTipsInBreakpointsView: false (default: false)
    dDebugMode/UseToolTipsInLocalsView: false (default: false)
    dDebugMode/UseToolTipsInStackView: true (default: true)
    dDebugMode/WarnOnReleaseBuilds: true (default: true)
    dDebugMode/WatchdogTimeout: 20 (default: 20)
    dQML.Inspector/QmlInspector.ShowAppOnTop: false (default: false)
    dState changed from DebuggerNotReady(0) to EngineSetupRequested(1)
    dCALL: SETUP ENGINE
    dSTARTING LLDB: /Library/Developer/CommandLineTools/usr/bin/lldb
    Setting up inferior...
    <96loadDumpers({"token":96})
    <97executeDebuggerCommand({"command":"settings append target.source-map /Users/qt/work/qt /Users/leuat/Qt/arm6.0.0-release/../Src","token":97})
    <98setupInferior({"attachpid":0,"breakonmain":0,<environment suppressed>,"executable":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse","nativemixed":0,"platform":"","processargs":"","remotechannel":"","startmode":1,"symbolfile":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse","sysroot":"","token":98,"useterminal":0,"workingdirectory":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS"})

    (lldb) script sys.path.insert(1, '/Users/leuat/Qt/Qt Creator.app/Contents/Resources/debugger/')

    (lldb) script from lldbbridge import *
    @
    lldbversion="lldb-1200.0.44.2
    Apple Swift version 5.3.2 (swiftlang-1200.0.45 clang-1200.0.32.28)"@
    (lldb) script theDumper.loadDumpers({"token":96})
    @
    result={token="96",dumpers=[{type="QVariant (QVariantMap)",formats="17"},{type="Utils__Id"},{type="Debugger__Internal__GdbMi"},{type="Debugger__Internal__DisassemblerLine"},{type="Debugger__Internal__WatchData"},{type="Debugger__Internal__WatchItem"},{type="Debugger__Internal__BreakpointModelId"},{type="Debugger__Internal__ThreadId"},{type="CPlusPlus__ByteArrayRef"},{type="CPlusPlus__Identifier"},{type="CPlusPlus__Symbol"},{type="CPlusPlus__Class"},{type="CPlusPlus__IntegerType"},{type="CPlusPlus__FullySpecifiedType"},{type="CPlusPlus__NamedType"},{type="CPlusPlus__PointerType"},{type="CPlusPlus__TemplateNameId"},{type="CPlusPlus__QualifiedNameId"},{type="CPlusPlus__Literal"},{type="CPlusPlus__StringLiteral"},{type="CPlusPlus__Internal__Value"},{type="Utils__FilePath"},{type="Utils__FileName"},{type="Utils__ElfSection"},{type="Utils__Port"},{type="Utils__Environment"},{type="Utils__NameValueDictionary"},{type="Utf8String"},{type="CPlusPlus__Token"},{type="CPlusPlus__Internal__PPToken"},{type="ProString"},{type="ProKey"},{type="Core__GeneratedFile"},{type="ProjectExplorer__ProjectNode"},{type="CMakeProjectManager__Internal__CMakeProjectNode"},{type="QmakeProjectManager__QmakePriFileNode"},{type="QmakeProjectManager__QmakeProFileNode"},{type="std__array",formats="16"},{type="std____1__array",formats="16"},{type="std__function"},{type="std__complex"},{type="std____1__complex"},{type="std__deque"},{type="std____1__deque"},{type="std__deque__QNX"},{type="std__deque__MSVC"},{type="std____debug__deque"},{type="std__list"},{type="std__list__QNX"},{type="std____debug__list"},{type="std____cxx11__list"},{type="std____1__list"},{type="std__map",formats="17"},{type="std____debug__map"},{type="std____debug__set"},{type="std__multiset"},{type="std____cxx1998__map"},{type="std__multimap",formats="17"},{type="std___Rb_tree_iterator"},{type="std___Rb_tree_const_iterator"},{type="std__map__iterator"},{type="__gnu_debug___Safe_iterator"},{type="std__map__const_iterator"},{type="std__set__iterator"},{type="std__set__const_iterator"},{type="std____cxx1998__set"},{type="std___Tree_const_iterator"},{type="std___Tree_iterator"},{type="std__set"},{type="std__set__QNX"},{type="std____1__set"},{type="std____1__multiset"},{type="std____1__map",formats="17"},{type="std____1__multimap",formats="17"},{type="std____1__map__iterator"},{type="std____1__map__const_iterator"},{type="std____1__set__iterator"},{type="std____1__set_const_iterator"},{type="std__stack"},{type="std____debug__stack"},{type="std____1__stack"},{type="std__string",editable="true",formats="5, 6, 7, 8"},{type="std____1__string"},{type="std____1__wstring"},{type="std____weak_ptr"},{type="std__weak_ptr"},{type="std____1__weak_ptr"},{type="std__shared_ptr"},{type="std____1__shared_ptr"},{type="std__unique_ptr"},{type="std____1__unique_ptr"},{type="std__pair"},{type="std__unordered_map",formats="17"},{type="std____debug__unordered_map",formats="17"},{type="std__unordered_multimap",formats="17"},{type="std____debug__unordered_multimap",formats="17"},{type="std__unordered_set"},{type="std____1__unordered_map",formats="17"},{type="std____1__unordered_set"},{type="std____debug__unordered_set"},{type="std__unordered_multiset"},{type="std____debug__unordered_multiset"},{type="std__valarray",formats="16"},{type="std____1__valarray",formats="16"},{type="std__vector",editable="true",formats="16"},{type="std____1__vector",formats="16"},{type="std____debug__vector",formats="16"},{type="std__initializer_list"},{type="string",editable="true"},{type="std__wstring",editable="true",formats="2, 4"},{type="std__basic_string"},{type="std____cxx11__basic_string"},{type="std____cxx11__string",editable="true",formats="5, 6, 7, 8"},{type="std____cxx11__wstring",editable="true",formats="2, 4"},{type="std____1__basic_string"},{type="wstring",editable="true"},{type="std____1__once_flag"},{type="std__once_flag"},{type="_gnu_cxx__hash_set"},{type="uint8_t"},{type="int8_t"},{type="std__byte"},{type="std__optional"},{type="std__experimental__optional"},{type="cv__Size"},{type="cv__Mat",formats="4"},{type="boost__bimaps__bimap"},{type="boost__optional"},{type="boost__shared_ptr"},{type="boost__container__list"},{type="boost__gregorian__date"},{type="boost__posix_time__ptime"},{type="boost__posix_time__time_duration"},{type="boost__unordered__unordered_set"},{type="boost__variant"},{type="__m128"},{type="__m256"},{type="__m512"},{type="__m128d"},{type="__m256d"},{type="__m512d"},{type="__m128i"},{type="__m256i"},{type="m512i"},{type="gsl__span"},{type="gsl__byte"},{type="Eigen__Matrix"},{type="NimStringDesc"},{type="NimGenericSequence"},{type="TNimNode"},{type="KDSoapValue1"},{type="KDSoapValue"},{type="WTF__String"},{type="PyTypeObject"},{type="_typeobject"},{type="PyObject"},{type="PyVarObject"},{type="QtcDumperTest_FieldAccessByIndex"},{type="QtcDumperTest_PointerArray"},{type="QtcDumperTest_BufArray"},{type="QtcDumperTest_List__NodeX"},{type="QtcDumperTest_List"},{type="QtcDumperTest_String"},{type="QAtomicInt"},{type="QBasicAtomicInt"},{type="QAtomicPointer"},{type="QByteArray",editable="true",formats="5, 6, 7, 8"},{type="QBitArray"},{type="QChar"},{type="Qt__ItemDataRole"},{type="QStandardItemData"},{type="QStandardItem"},{type="QDate"},{type="QTime"},{type="QTimeZone"},{type="QDateTime"},{type="QDir"},{type="QEvent"},{type="QKeyEvent"},{type="QFile"},{type="QFileInfo"},{type="QFixed"},{type="QFiniteStack",formats="16"},{type="QFlags"},{type="QHash",formats="17"},{type="QVariantHash"},{type="QHashNode",formats="17"},{type="QHash__const_iterator"},{type="QHash__iterator"},{type="QHostAddress"},{type="QIPv6Address"},{type="QList",formats="18, 19"},{type="QVariantList"},{type="QImage",formats="2, 4"},{type="QLinkedList"},{type="QLocale"},{type="QMapNode"},{type="QMap",formats="17"},{type="QMultiMap",formats="17"},{type="QVariantMap",formats="17"},{type="QMetaMethod"},{type="QMetaEnum"},{type="QMetaProperty"},{type="QMetaClassInfo"},{type="QMetaObject"},{type="QProcEnvKey"},{type="QPixmap"},{type="QMargins"},{type="QPoint"},{type="QPointF"},{type="QRect"},{type="QRectF"},{type="QRegExp"},{type="QRegion"},{type="QScopedPointer"},{type="QSet"},{type="QSharedData"},{type="QSharedDataPointer"},{type="QSize"},{type="QSizeF"},{type="QSizePolicy__Policy"},{type="QSizePolicy"},{type="QStack",formats="16"},{type="QPolygonF"},{type="QPolygon"},{type="QGraphicsPolygonItem"},{type="QString",editable="true",formats="2, 4"},{type="QStaticStringData"},{type="QTypedArrayData"},{type="QStringData"},{type="QHashedString"},{type="QQmlRefCount"},{type="QStringRef"},{type="QStringList"},{type="QTemporaryFile"},{type="QTextCodec"},{type="QTextCursor"},{type="QTextDocument"},{type="QUrl",formats="2, 4"},{type="QUuid"},{type="QVariant"},{type="QVector",editable="true",formats="16"},{type="QVarLengthArray"},{type="QSharedPointer"},{type="QWeakPointer"},{type="QPointer"},{type="QXmlAttributes__Attribute"},{type="QXmlAttributes"},{type="QXmlStreamStringRef"},{type="QXmlStreamAttribute"},{type="QV4__Heap__Base"},{type="QV4__Heap__String"},{type="QV4__Object"},{type="QV4__FunctionObject"},{type="QV4__CompilationUnit"},{type="QV4__CallContext"},{type="QV4__ScriptFunction"},{type="QV4__SimpleScriptFunction"},{type="QV4__ExecutionContext"},{type="QQmlSourceLocation"},{type="QV4__String"},{type="QV4__Identifier"},{type="QV4__PropertyHash"},{type="QV4__InternalClass__Transition"},{type="QV4__InternalClassTransition"},{type="QV4__SharedInternalClassData"},{type="QV4__IdentifierTable"},{type="QV4_Object"},{type="QV4__Value"},{type="QV__PropertyHashData"},{type="QV__PropertyHash"},{type="QV4__Scoped"},{type="QV4__ScopedString"},{type="QJSValue"},{type="QQmlBinding"},{type="QTJSC__JSValue"},{type="QScriptValue"},{type="QQmlAccessorProperties__Properties"},{type="QJsonPrivate__qle_bitfield"},{type="QJsonPrivate__qle_signedbitfield"},{type="QJsonPrivate__q_littleendian"},{type="QJsonValue"},{type="QJsonArray"},{type="QJsonObject"},{type="QSqlResultPrivate"},{type="QSqlField"},{type="QLazilyAllocated"},{type="qfloat16"},{type="QCborArray"},{type="QCborMap"},{type="QCborValue"},{type="QCborValue_proxy"},],python="30802"}@
    96^
    (lldb) script theDumper.executeDebuggerCommand({"command":"settings append target.source-map /Users/qt/work/qt /Users/leuat/Qt/arm6.0.0-release/../Src","token":97})
    @
    token("97")@
    @
    success="1",output="",error=""@
    (lldb) script theDumper.setupInferior({"attachpid":0,"breakonmain":0,"environment":["5f5f43465f555345525f544558545f454e434f44494e473d30783146353a3078303a307830","5f5f434642756e646c654964656e7469666965723d6f72672e71742d70726f6a6563742e717463726561746f72","434f4d4d414e445f4d4f44453d756e697832303033","44594c445f4652414d45574f524b5f504154483d2f55736572732f6c657561742f636f64652f545253452f6c6962733a2f55736572732f6c657561742f636f64652f545253452f6c6962732f6c75612f3a2f55736572732f6c657561742f51742f61726d362e302e302d72656c656173652f6c6962","44594c445f4c4942524152595f504154483d2f55736572732f6c657561742f636f64652f545253452f6c6962733a2f55736572732f6c657561742f636f64652f545253452f6c6962732f6c75612f3a2f55736572732f6c657561742f51742f61726d362e302e302d72656c656173652f6c6962","484f4d453d2f55736572732f6c65756174","4c4f474e414d453d6c65756174","504154483d2f55736572732f6c657561742f51742f61726d362e302e302d72656c656173652f62696e3a2f4170706c69636174696f6e732f58636f64652e6170702f436f6e74656e74732f446576656c6f7065722f546f6f6c636861696e732f58636f646544656661756c742e7863746f6f6c636861696e2f7573722f62696e3a2f7573722f62696e3a2f62696e3a2f7573722f7362696e3a2f7362696e","51544449523d2f55736572732f6c657561742f51742f61726d362e302e302d72656c65617365","5348454c4c3d2f62696e2f7a7368","5353485f415554485f534f434b3d2f707269766174652f746d702f636f6d2e6170706c652e6c61756e6368642e6d594b6f36477a6e6d712f4c697374656e657273","544d504449523d2f7661722f666f6c646572732f64322f627a39703576623132336e63726a7767723172637167716330303030676e2f542f","555345523d6c65756174","5850435f464c4147533d307830","5850435f534552564943455f4e414d453d6170706c69636174696f6e2e6f72672e71742d70726f6a6563742e717463726561746f722e313131363034382e31313231313330"],"executable":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse","nativemixed":0,"platform":"","processargs":"","remotechannel":"","startmode":1,"symbolfile":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse","sysroot":"","token":98,"useterminal":0,"workingdirectory":"/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS"})

    @
    result={token="98",success="1",msg="success",exe="/Users/leuat/code/TRSE/Debug/trse.app/Contents/MacOS/trse"}@
    98^
    <99executeRoundtrip({"token":99})
    (lldb) script theDumper.executeRoundtrip({"token":99})
    @
    result={token="99",}@
    99^
    dNOTE: ENGINE SETUP OK
    dState changed from EngineSetupRequested(1) to EngineSetupOk(3)
    dState changed from EngineSetupOk(3) to EngineRunRequested(4)
    dCALL: RUN ENGINE
    Running requested...
    <100runEngine({"token":100})
    (lldb) script theDumper.runEngine({"token":100})



  • Also: using editor version qt5.15 (x86_amd64) through rosetta, so I guess hum mixing arm and x86 might also be part of the issue?



  • also, I should note that lldb works just fine, not showing source code was simply me running the program from an incorrect path. I guess lldb is the way to go until you guys release a fully operational kit for ARM...


Log in to reply