草庐IT

binutils-gdb

全部标签

ios - gdb - 最后一次寄存器值更改的地址?

在调试应用程序时,有时我想知道r2寄存器中的值的含义。是否有可能使用gdb来查看在我的断点被击中之前寄存器r2的值最后更改的是哪条指令?如果那是不可能的,有什么办法可以看出电脑是从哪个地址跳转到当前地址的?谢谢 最佳答案 Isitpossible,usinggdb,toseeatwhichinstructionwasthevalueofregisterr2lastchangedbeforemybreakpointwasstruck?没有。Ifthatisimpossible,isthereawaytoseefromwhichaddr

ios - XCode 调试 (GDB) 在单步执行代码时随机挂起

在第100亿次遇到这个问题并且几乎沮丧地把我的macair甩出窗外后,我决定崩溃并询问是否有其他人遇到过这个......环境:为iOS4.2+应用程序(通用应用程序)运行最新版本的XCode(截至本问题:4.2,构建4C199)。看起来GDB在单步执行代码行时随机决定完全挂起。我现在在多个代码库中以及每个代码库中的不同位置都发生过这种情况。步进过程卡在任意点,需要停止并重新启动正在运行的iOS模拟器或设备上的进程。通常,在重新启动我的调试session后,我能够进入/通过一个不同的任意点——有时甚至足以完全调试我的代码(喘气)。我尝试删除我的驱动器,重新安装MacOSX10.6.8和上

iphone - 在 GDB 中访问静态方法

我最近在Xcode中发现了GDB,它弥补了一些恕我直言似乎在Xcode中缺少的功能。因此我可以在GDB中执行以下操作:(gdb)po[LoginManagersharedSession].loginToken20D52FE9-3573-437E-9A65-846572B63726但是,我有另一个服务类,目前没有加载,所以我得到以下错误:(gdb)po[SessionServicedisplaySessionInfoForToken:@"XXX"]Nosymbol"SessionService"incurrentcontext.我不明白为什么LoginManager可以加载,而Sessi

iphone - 更好的 gdb/iOS 调试器 UI

我正在调试一个iPhone应用程序,嗯,gdb并没有为我做这件事。是否有任何替代调试器或调试器uis我可以用于一般的XCode,或者专门用于调试iPhone应用程序? 最佳答案 lldb是唯一受支持的选择。上次我检查它处于alpha状态。 关于iphone-更好的gdb/iOS调试器UI,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/9067602/

实现vscode上用gdb调试stm32

实现vscode上用gdb调试stm32这周负责编写设备的某个模块,其中遇到了一些变量地址不正确的错误,按理这种底层变量错误用gdb一类的调试器就能很快查到,可是初入嵌入式一行,此C语言非彼C语言,对于gdb怎么对接到项目上根本一无所知,问了下周边同事,发现他们居然都是直接打串口日志来调试的,那岂不是每次遇到问题都得在代码上留一堆丑陋的printf?我对如此原始的调试方式实在不服气,便想找到相关的对接工具,我的开发习惯是在vscode上写好代码后再在keil上编译烧录,由于keil的界面和操作实在令我难以接受,因此我的需求就是找到在vscode上找到调试单片机的方法,一开始我以为占工作时间一两

TCP/IP协议栈源代码分析:GDB调试环境搭建及源码分析

一、环境构建1.实验环境Ubuntu22.04LTSLinux-5.4.34busybox-1.36.02.环境配置2.1安装相关工具axel是一款多线程下载工具,用于下载Linux内核源代码及其他大文件;build-essential软件包里面包含了很多开发必要的软件工具,比如make、gcc等;QEMU是一种通用的开源计算机仿真器和虚拟器,为自己编译构建的Linux系统运行提供虚拟硬件平台。sudoaptupdatesudoapt-getinstallaxelsudoapt-getinstallbuild-essentialsudoaptinstallqemusudoapt-getinst

Android ndk-build 不生成 gdb.setup 文件

我目前正在尝试通过ndk-gdb在Android中调试native代码,但我遇到了一些麻烦。即使我开始一个非常简单的项目(例如默认的cocos2d-xv3项目)并运行ndk-buildNDK_DEBUG=1我最终在我的android项目中得到以下文件夹结构...libs/armeabi/libcocos2dcpp.so...而不是预期的:...libs/armeabi/gdb.setupgdbserverlibcocos2dcpp.so...为了使用ndk-gdb,我需要这两个gdb文件。我使用的是cocos3.2版本和AndroidNDK版本r9d。NDK_DEBUG=1是否足以生成

android - 使用 GDB 调试 Android native 代码非常慢

我使用Eclipse和GDB(ndk-gdb)在我刚刚移植的Android应用程序中调试nativeC++代码。在Eclipse中调试Java端是可以的,但是调试C++代码太慢了,几乎不可行。在最新的PC上,从一个语句步进到下一个语句大约需要25秒。我也不断收到这样的错误org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException:目标没有响应(超时)[]虽然调试似乎不会对程序流程产生不利影响,但确实表明存在一些问题。还有其他人遇到过这个问题吗? 最佳答案 你用的是安卓模拟器吗?如果是这样,您是

『Linux升级路』基础开发工具——gdb篇

🔥博客主页:小王又困了📚系列专栏:Linux🌟人之为学,不日近则日退❤️感谢大家点赞👍收藏⭐评论✍️目录一、背景知识介绍二、gdb指令介绍一、背景知识介绍   在软件开发中,通常会有两种主要的构建配置:Debug(调试)和Release(发布)。这两种配置的存在是为了在不同的开发和使用阶段提供不同的优化和调试支持。以下是它们存在的主要原因:📝调试配置:符号信息: Debug配置通常包含完整的符号信息,这使得在调试过程中能够准确地追踪到源代码的行号和调用堆栈信息。这对于开发人员在调试应用程序时非常重要。优化程度低: Debug配置一般不进行代码优化,以确保生成的代码更易于调试。变量和表达式的值通

android - ndk-gdb 无法找到 gdb.setup

我正在尝试使用ndk-gdb调试我的原生android项目。当我运行命令ndk-gdb时出现错误Couldnotfindgdb.setupunder./libs/解释运行MacOSX,ndkr10e;使用ndk示例SanAngeles按照此处的步骤设置native调试https://developer.android.com/ndk/guides/ndk-gdb.html基本上我设置了android:debuggable="true",APP_OPTIM:=debug并使用ndk-buildNDK_DEBUG=1构建原生(这3个设置可能是多余的,但以防万一)使用antdebug、adb