qt Please select a 64 bit Debugger in the kit settings for this kit.

本文介绍了在Qt Creator中调试时遇到的问题及其解决方法。PDB是程序数据库,用于存储调试和项目状态信息,而CDB是Windows系统的命令行调试器。当Qt Creator无法进入调试时,可能是因为缺少64位调试器。文章详细讲解了如何配置CDB作为调试器,并解决了'qtPleaseselecta64bitDebuggerinthekitsettingsforthiskit.'的错误提示。

Qt系列文章目录

前言

如果你的QtCreator无进入调试

qt Please select a 64 bit Debugger in the kit settings for this kit.
在这里插入图片描述

一、PDB是什么?

1.PDB简介
PDB(Program Database,程序数据库)文件保存调试和项目状态信息,允许增量链接程序的Debug配置。使用/ ZI或/ Zi(用于C / C ++)构建时,将创建PDB文件。
每次创建OBJ文件时,C / C ++编译器都会将调试信息合并到VCx0.PDB中。插入的信息包括类型信息,但不包括诸如功能定义之类的符号信息。因此,即使每个源文件都包含公共头文件(如<windows.h>),这些头文件中的typedef也只存储一次,而不是存储在每个OBJ文件中。
链接器创建project.PDB,其中包含项目的EXE文件的调试信息。 project.PDB文件包含完整的调试信息,包括函数原型,而不仅仅是VCx0.PDB中的类型信息。两个PDB文件都允许增量更新。链接器还将.pdb文件的路径嵌入到它创建的.exe或.dll文件中。

二.CDB是什么

windows系统下主要的调试器:

CDB ,只能调试用户程序,只有控制台界面,以命令行形式工作
NTSD, 只能调试用户程序,只有控制台界面,以命令行形式工作
KD,主要用于内核调试,有时候也用于用户态调试,只有控制台界面,以命令行形式工作
WinDbg,在用户态、内核态下都能够发挥调试功能,采用了可视化的用户界面
Qt Creator使用调试器可以是gdb和cdb,本篇文章只介绍cdb。

我们这里设置CDB调试器
在这里插入图片描述
注意:64位的对应x64
32位的对应x32
否则报错:
qt Please select a 64 bit Debugger in the kit settings for this kit.
或者包这种错
在这里插入图片描述

总结

`Have funning!

<think>我们正在处理用户关于Qt 6.8.3在Debug模式下出现'64位可执行文件不能被32位调试器调试'的错误。用户已经提供了三个引用,但主要问题与调试器配置有关。根据错误信息,问题在于当前选择的调试器是32位的,而项目是64位的,因此需要配置64位调试器。 解决方案步骤: 1. 确认系统已安装64位调试器(如GDB for 64位)。 2.Qt Creator中配置64位调试器。 3. 在项目构建套件(Kit)中选择配置好的64位调试器。 4. 确保项目构建套件设置为64位目标。 具体步骤: 步骤1:安装64位调试器 在Linux系统中,通常可以通过包管理器安装64位的GDB。例如,在Ubuntu/Debian上: ``` sudo apt install gdb ``` 步骤2:在Qt Creator中配置调试器 打开Qt Creator,进入菜单:工具(Tools) -> 选项(Options) -> 构建和运行(Kits) -> 调试器(Debuggers)。 点击“添加”按钮,然后浏览到GDB的路径(通常为`/usr/bin/gdb`)。然后,给这个调试器命名(例如“GDB x86_64”)。 步骤3:配置构建套件(Kit) 在构建和运行(Kits)选项卡中,选择当前使用的构建套件(例如“Desktop Qt 6.8.3 GCC 64bit”)。 在“调试器(Debugger)”下拉框中,选择步骤2中添加的64位调试器。 步骤4:检查构建套件的其他设置 确保构建套件中的其他设置正确,特别是编译器(应为64位编译器)和Qt版本(应为64Qt版本)。 步骤5:重新配置项目 在项目设置中,确保选择了正确的构建套件(即步骤3中配置的套件)。然后,清理项目并重新构建。 如果上述步骤无法解决问题,可能需要检查系统环境变量,以确保没有冲突的设置(参考引用[2]提到了环境变量配置,但主要与ROS和Qt Creator启动有关,可能不是直接原因,但可以作为参考)。 另外,引用[3]提到关于编译MySQL驱动时复制文件夹的问题,但该问题与当前调试器问题无关。 根据引用[1],如果遇到其他问题,可以参考Qt官方文档或社区解决方案。 注意:用户是在Linux环境下,所以上述解决方案基于Linux系统。 相关问题: 1. 如何在Qt Creator中添加调试器? 2. 如何确认Qt项目是64位还是32位? 3. Qt Creator中如何切换构建套件? 4. 如何安装64位的GDB调试器? 5. Qt Creator调试配置常见问题有哪些? </think>### QT 6.8.3 Debug模式下出现'64 bit executable which can not be debugged by a 32 bit Debugger'错误的解决方法 该错误表明您正在尝试用 **32位调试器** 调试 **64位编译** 的程序。解决方法如下: #### 步骤1:确认调试器架构(终端执行) ```bash gdb --version | grep "host" # 输出示例:x86_64-pc-linux-gnu 表示64位调试器 # 若显示 i686/i386 则为32位调试器 ``` #### 步骤2:安装64位GDB调试器 ```bash sudo apt update sudo apt install gdb-multiarch # 或 sudo apt install gdb(Ubuntu/Debian) # 对于Arch:sudo pacman -S gdb ``` #### 步骤3:在Qt Creator中配置调试器 1. 打开 **Tools > Options > Kits** 2. 选择当前使用的Kit(如 *Desktop Qt 6.8.3 GCC*) 3. 在 *Debugger* 下拉菜单: - 点击 **Manage...** 按钮 - 添加新调试器路径:`/usr/bin/gdb`(或`gdb-multiarch`的路径) - ![Qt Kit Debugger配置示意图](https://doc.qt.io/qtcreator/images/debugger-settings.png) [^1] #### 步骤4:验证项目配置 1. 在左侧项目面板点击 **Projects** 2. 确保: - **Build** 选项卡:`qmake` 参数包含 `-spec linux-g++-64` - **Run** 选项卡:Kit 选择了带 "64bit" 标识的版本 #### 步骤5:检查环境变量(参考引用[2]) 在Qt Creator启动脚本中添加架构标识: ```bash #!/bin/bash export QMAKE_SPEC=linux-g++-64 # 明确指定64位架构 exec /opt/Qt/Tools/QtCreator/bin/qtcreator "$@" ``` #### 步骤6:重建项目 1. 执行 **Build > Clean Project** 2. 重新构建 **Build > Rebuild Project** 3. 启动调试(F5) > **关键点**:Qt默认使用系统路径中的`gdb`。若存在多个版本,通过`update-alternatives --config gdb`切换默认调试器为64位版本[^2]。 ### 相关问题 1. 如何检查Qt项目编译的目标架构? 2. Linux下如何同时管理32位和64位开发环境? 3. Qt Creator中如何配置多个调试器? 4. 为什么Release模式正常但Debug模式报架构错误? 5. 如何编译64Qt MySQL驱动(参考引用[3])时的架构注意事项? [^1]: Qt官方文档建议在Kit中明确选择与编译目标匹配的调试器版本 [^2]: 环境变量配置需确保构建工具链架构一致性 [^3]: MySQL驱动编译时需注意库架构匹配
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值