我已设置标志-DQT_QML_DEBUG并检查"启用QML"在"构建并运行>运行>调试器设置" (我的翻译)但我仍然无法使用调试器。简单地不显示指令指针,文本视图不遵循instructoin指针。另外,我在开始时收到此警告:
name breeder_count
--------------------------
Mouse 2
Cow 1
Pig 1
Dog 0
编辑:Environtment是archlinux,因此是最新版本。
答案 0 :(得分:3)
除了前两个步骤,添加
#include <QQmlDebuggingEnabler>
...
QQmlDebuggingEnabler enabler;
到项目的main.cpp。
这对我很有帮助,虽然我没有看到你的确切警告信息。
答案 1 :(得分:0)
需要禁用编译qml文件才能进行调试。
FIND_PACKAGE(Qt5QuickCompiler QUIET)
IF(Qt5QuickCompiler_FOUND AND NOT CMAKE_BUILD_TYPE MATCHES Debug AND NOT CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
QTQUICK_COMPILER_ADD_RESOURCES(RESOURCES qml.qrc)
ELSE()
SET(RESOURCES qml.qrc)
ENDIF()
ADD_EXECUTABLE(my_target_name
...
${RESOURCES}
)
目标需要使用QT_QML_DEBUG
TARGET_COMPILE_DEFINITIONS(my_target_name
PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
这应该在不玩QQmlDebuggingEnabler