在Linux上调试

设置Qt VS Tools在Linux上的交叉编译,以调试在Linux设备上运行的应用程序。首先使用gdbserver启动应用程序,然后配置GDB以连接到设备并启动一个远程调试会话。

为此,WSL中安装的GDB必须支持目标设备架构。一种简单的方法是安装gdb-multiarch。为确保Visual Studio使用正确的调试器,从gdb创建到gdb-multiarch的符号链接。

设置远程调试

要在Visual Studio中设置远程调试会话,必须向GDB传递额外的命令

  1. 解决方案资源管理器中选择一个项目。
  2. 转到项目 > 属性 > 配置属性 > 调试

    {Debugging properties}

  3. 调试器启动中,选择GDB调试器
  4. 其他调试器命令中,添加以下命令
    target extended-remote <IP_address>:<port>
    set remote exec-file <path_to_executable>

设置环境变量

在开始远程调试会话之前

  1. 设置所需的环境变量
    • LD_LIBRARY_PATH指定安装Qt二进制的目录的路径。
    • QT_QPA_PLATFORM指定平台插件,例如EGLFS、LinuxFB、DirectFB或Wayland。
    • QT_QPA_PLATFORM_PLUGIN_PATH指定安装平台插件目录的路径。
    • 对于EGLFS平台,QT_QPA_EGLFS_PHYSICAL_WIDTHQT_QPA_EGLFS_PHYSICAL_HEIGHT指定屏幕宽度和高度(以毫米为单位)。
    • QML2_IMPORT_PATH指定安装QML模块的目录的路径。
  2. 在设备上启动gdbserver

启动远程调试

F5开始远程调试会话。

设置在Linux设备上的调试

要调试Linux设备上的Qt Quick应用程序

  1. 为项目启用QML调试。
  2. 转到 项目 > 属性 > 配置属性 > 调试 以设置启动 QML 调试会话的程序参数。
  3. 调试器启动中,选择GDB调试器
  4. 其他调试命令 中,添加以下命令
    -qmljsdebugger=port:<port>,host:<IP_address>,block

另请参阅 教程:Qt Quick 调试交叉编译调试应用程序启用 QML 调试,和 调试 Qt Quick 应用程序

©2024 Qt 公司有限公司。本文件中包含的文档贡献者是各自版权所有者。所提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 及其相关标志是芬兰及其它全球国家的 Qt 公司商标。所有其他商标均为其各自所有权人的财产。