草庐IT

arm-none-eabi-gdb

全部标签

c++ - 由于 KERNELBASE.dll 错误,GDB 无法运行程序

我最近才开始遇到这个问题,我不知道它是什么时候开始出现的/是什么原因造成的。我这里有这个简单的测试程序:#includeintmain(){return0;}但是当我尝试正常运行它时,它会创建一个堆栈转储。Stacktrace:FrameFunctionArgs00CBC4986101D93A(00000198,0000EA60,000000A4,00CBC508)00CBC5C8610E2F3F(00000000,60FC04E8,00CBC658,7794ABEE)然而,当我尝试在GDB中运行它时,它显然无法运行。gdb:unknowntargetexception0x406d13

c++ - 成员结构位域元素的初始化列表初始化导致 IAR ARM 中的错误

我在IAR中有以下类结构:classA{public:A(){}virtual~A(){};virtualvoidload(){};};classC{public:C(){//Cdoesotherstuff,notrelevant}};classD;classB:publicA{public:B():invert(false){};virtual~B(){};voidload(){//Irrelevantstuffdonehere}private:Cmember_c;std::vectorvector_of_d;struct{boolvar_1:1;boolvar_2:1;boolva

c++ - 嵌入式 C++ (ARM9) 单元测试

我来自Java和JUnit的世界。我演示了Hudson以及我在那里使用JUnit取得的所有成果。我想在嵌入式设备上对C++代码执行相同的操作,但找不到从哪里开始。该项目使用iccarm.exe(IAR编译器)编译,现在使用romutil.exe将输出转换为图像文件,以闪存到ARM9板。我尝试按照本教程进行操作:http://netbeans.org/kb/docs/cnd/c-unit-test.html但我在尝试弄清楚如何将其移植到我的案例中时遇到了问题。我可以在设备外部对C++代码运行单元测试吗?(即与Hudson一起收集报告等)我可以将输出转换为exe吗?(看起来像Netbean

c++ - GDB 观察实例 vector 中的类成员

这是我的类(class)的一个极其简化的版本:ClassMyClass{public:intsizeDesired;};我正在创建MyClass的vector主要实例:intmain(intargc,char**argv){std::vectormyvec;for(inti=0;i有一些内存损坏(我认为)错误导致我的程序崩溃。我观察到MyClass::sizeDesired的值程序崩溃时是垃圾。所以,我想在每个MyClass:sizeDesired上设置一个观察点成员,这样我就可以准确地看到这些成员的值何时发生变化。使用GDB,我该怎么做?当我在推送MyClass的所有实例后中断时在s

AI 数据分析性能提升至高 196%,Arm 推出新一代 Neoverse 数据中心计算平台

2月22日消息,Arm于昨日公布了新一代的Neoverse数据中心计算平台,包括NeoverseV3、N3两种处理器设计和NeoverseS3系统IP。这两款处理器在设计上专为严苛AI负载优化设计,相较上代产品大幅提升AI性能。IT之家从公开资料了解到,Arm于去年推出了NeoverseCSS运算子系统,提供包含处理器设计的一揽子预验证平台,加速定制SoC上市流程,首发型号为NeoverseCSSN2。Arm 随后又基于NeoverseCSS打造了TotalDesign全面设计生态,连接从晶圆代工到IP供应再到固件的上下游各方,降低开发成本和阻力。此次配套NeoverseCSS平台与Neove

python - 遗留 GDB 脚本中堆栈跟踪的停止条件

我有一个遗留的GDB命令脚本,用于基于Python2.6源代码附带的GDB脚本获取Python堆栈跟踪(所以不允许超链接,但这是URL:http://#%20http://svn.python.org/view/*checkout*/python/branches/release26-maint/Misc/)该脚本有一个while循环,它基于要退出的程序计数器进行相当脆弱的检查,这(如评论中的原始代码中所述)可能仅适用于直接运行Python的情况,如果解释器从C/C++应用程序中启动。现有的while循环如下所示:while$pcPy_GetArgcArgv#...#codeforex

c++ - 保存并重新启动暂停的 gdb session

我的理解是gdb可以监控正在运行的程序的完整状态。我可以保存在断点处暂停的gdbsession并稍后恢复session吗?我的第一次尝试只是在断点处暂停的第一个gdbsession中生成核心转储,然后使用核心转储启动第二个gdbsession。Savingcorefileingdb这导致了以下错误。ProgramterminatedwithsignalSIGTRAP,Trace/breakpointtrap.所以断点信息被插入到程序状态中,有意思。在我第二次尝试时,我做了同样的事情,但这次我在第二个session中添加了与第一个session中相同的断点。Gettinggdbtosav

c++ - gdb/lldb 调用一个函数并在其中中断

我在一个长期运行的程序中有一个全局函数:inttest(){inta=12;intc=10;printf("a=%d",a);a+=c;printf("a=%d",a);returna;}我调试程序并中断,然后发出以下命令:(lldb)calltest()a=12a=22(int)$0=22(lldb)我希望它在我点击calltest()之后每一行都在test()方法中中断,而不是立即返回结果。任何人都知道该怎么做?------------------------------------下面回答------------------------------------@JasonMole

c++ - 使用 python 扩展在 gdb 中打印 Eigen 类型时遇到问题

我想在gdb中打印Eigen矩阵和vector,因此我添加了扩展名来执行此操作,可在此处找到:https://bitbucket.org/eigen/eigen/src/12a658962d4e/debug/gdb/printers.py但是,当我尝试在ddd中的某些Eigen类型上调用print时,出现以下错误:PythonException'map'objectisnotsubscriptable:PythonException'map'objectisnotsubscriptable:PythonException'map'objectisnotsubscriptable:基于t

ARM_Linux中GCC编译器的使用

目录前言:GCC编译过程:预处理:编译阶段:汇编:链接阶段GCC的常见使用前言:什么是GCC:gcc的全称是GNUCompilerCollection,它是一个能够编译多种语言的编译器。最开始gcc是作为C语言的编译器(GNUCCompiler),现在除了c语言,还支持C++、java、Pascal等语言。gcc支持多种硬件平台。特点:gcc是一个可移植的编译器,支持多种硬件平台。例如ARM、X86等等。gcc不仅是个本地编译器,它还能跨平台交叉编译。所谓的本地编译器,是指编译出来的程序只能够在本地环境进行运行。而gcc编译出来的程序能够在其他平台进行运行。例如嵌入式程序可在x86上编译,然后