草庐IT

arm-none-eabi-gdb

全部标签

Mac M1(arm 系列芯片)如何安装 Chromium | Puppeteer

最近写个脚本用到puppeteer,然后安装Chromium出现一点问题,这里记录一下解决方案。Puppeteer自动安装失败在Puppeteer安装时会自动安装Chromium,然而却总是报错502导致下载失败,直接下载可以下载,命令行wget也可以,猜测是因为Puppeteer开启了新的process来安装导致环境变量丢失,然后就玄学上网失败了。这会回头看了看Puppeteer的安装脚本,好像可以使用npm_config_https_proxy等配置来玄学上网。functionoverrideProxy(){//Overridecurrentenvironmentproxysettings

c++ - 在 gdb 中漂亮地打印 boost::mpl::string<...> 类型

我使用boost::mpl::string广泛的类型......足以真正帮助调试以在gdb中漂亮地打印类型.所以...而不是gdb像当前一样显示单个(多字rune字)组件...boost::mpl::string它会显示等效的字符串值而不是...boost::mpl::string我看过gdbgdb中用于pretty-printSTL容器的宏和python脚本,但我找不到一个pretty-printboost::mpl字符串。有人可以帮忙吗?更新:我已经添加了一个+100赏金......我正在寻找一种解决方案,它利用最新的GDB支持通过python进行pretty-print(如对ST

c++ - 可以在 gdb 中调用内联函数和/或使用 GCC 发出它们吗?

我们都知道内联函数会使调试变得更加棘手,因为它们可以从堆栈跟踪等中删除。但是假设我想从gdb中调用一个内联函数,并且我知道它的名称和参数。我认为我应该能够做到这一点,但我明白了:Cannotevaluatefunction--maybeinlined我用nm列出了我正在使用的共享库中的符号,发现我要调用的函数不在里面。没什么大惊喜。我想要的是一种生成这些内联函数的可见定义的方法。我可以访问当前包含内联定义的头文件,但我无法真正修改这些头文件。也许有某种方法可以告诉编译器发出它在翻译单元中看到的所有内联函数的定义?或者其他一些可以更轻松地在gdb中调用和检查内联函数结果的技巧?我在Lin

c++ - SDL2 & GDB : program received signal ?,未知信号

让我们从描述发生的事情开始:我正在Windows上使用SDL2库。我可以使用它编译程序,当我运行.exe时,它​​工作得很好。当我尝试使用GDB调试它时出现问题-当代码进入SDL_Init或SDL_OpenAudio函数(可能创建新线程)时,GDB停止,显示“程序收到信号?,未知信号”消息,当我恢复执行时程序崩溃。显然GDB(https://www.mail-archive.com/cygwin@cygwin.com/msg149735.html)中存在与线程命名相关的错误,应该在GDB版本7.11.1-1中修复。起初我使用GCC5.1.0(TDM)和GDB7.6.1,所以我决定更新到

【ARM 嵌入式 编译系列 2.4 -- 编译参数-Wl,--gc-sections | -wsuggest-attribute=pure | -wreal-q-constant |】

请阅读【嵌入式开发学习必备专栏之ARMGCC编译专栏】文章目录概述编译参数详细介绍-Wl选项例子:--gc-sections``--gc-sections例子:-Wshadow例子:-Wlogical-op例子:-Waggregate-return例子:-Wfloat-equal例子:-Wconversion例子:-Wpointer-arith例子:概述在使用GCC(GNUCompilerCollection)进行编译时,可以通过不同的编译参数(标志)来控制编译行为、优化级别、警告输出等。以下是您列出的一些GCC编译参数的介绍:编译参数详细介绍参数作用–all-warnings与-Wall相同

About the ARM PrimeCell GPIO

ThePrimeCellGPIOisanAdvancedMicrocontrollerBusArchitecture(AMBA)compliantSystem-on-Chip(SoC)peripheralthatisdeveloped,tested,andlicensedbyARM.ThePrimeCellGPIOisanAMBAslavemodulethatconnectstotheAdvancedPeripheralBus(APB).ThePrimeCellGPIOprovideseightprogrammableinputsoroutputsthatyoucancontrolintwom

gdb调试常见命令详细总结(附示例操作)

一、简介通过gdb调试我们可以监控程序执行的每一个细节,包括变量的值、函数的调用过程、内存中数据、线程的调度等,从而发现隐藏的错误或者低效的代码,程序的调试过程主要有:单步执行,跳入函数,跳出函数,设置断点,设置观察点,查看变量。本文将主要介绍linux下的gdb调试工具常用的命令和具体的使用实例。二、调试过程介绍2.1编译程序加参数时生成调试信息-g和-ggdb都是令gcc生成调试信息,但是它们也是有区别的选项解析g该选项可以利用操作系统的“原生格式(nativeformat)”生成调试信息。GDB可以直接利用这个信息,其它调试器也可以使用这个调试信息ggdb使GCC为GDB生成专用的更为丰

c++ - GDB 在对象函数调用时中断

我正在调试一个问题,我想中断每个将特定对象作为“this”参数的方法调用。这在GDB中可能吗? 最佳答案 这很容易。您可以使用像bA::aif(this==0x28ff1e)这样的命令。 关于c++-GDB在对象函数调用时中断,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7617194/

c++ - 使用 gdb 调试 C++ 模板

当我在带有模板的函数内部调试时,我如何知道当前函数正在使用哪种模板类型?我试过了pT.它说gdb无法打印类型。如何中断特定模板类型?假设函数foo(...)有2种可能的形式,foo(...)和foo(...).如何设置断点以便gdb仅在第一个使用int的断点处暂停,但不是第二个使用long的?编辑:如果断点可以按行号设置就好了。这有很多很好的理由,例如。函数的初始部分可能需要很长时间才能运行,我希望调试的地方可能在if中声明等 最佳答案 要为所有实例设置断点,请使用:gdb>rbreakFoo只在已知实例上设置断点gdb>break

c++ - VS Code 上的简单 GDB C++ 调试失败并出现 NullReferenceException

我的源代码file.cpp:#includeusingnamespacestd;intmain(){intx=1;inty=2;cout我使用g++-gfile.cpp编译它,然后我的launch.json文件是这样的:{"version":"0.2.0","configurations":[{"name":"(gdb)Launch","type":"cppdbg","request":"launch","program":"${workspaceFolder}/a.out","args":[],"stopAtEntry":false,"cwd":"${workspaceFolder}