首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

OSX Catalina上的gdb 8.3.1 "not in executable format: file format not recognized“

OSX Catalina上的gdb 8.3.1 "not in executable format: file format not recognized"是由于gdb版本不兼容导致的错误。在OSX Catalina中,由于系统安全性的提升,Apple引入了新的系统保护机制,导致gdb无法正常运行。

解决这个问题的方法是使用LLDB调试器代替gdb。LLDB是苹果官方推荐的调试器,与OSX Catalina兼容,并且提供了类似于gdb的功能。

LLDB可以通过命令行或者Xcode集成开发环境进行使用。以下是使用LLDB调试器的一些常用命令:

  1. lldb <可执行文件>:启动LLDB调试器并加载可执行文件。
  2. run:运行程序。
  3. breakpoint set --name <函数名>:设置断点。
  4. continue:继续执行程序。
  5. next:执行下一行代码。
  6. print <变量名>:打印变量的值。
  7. step:进入函数调用。
  8. finish:跳出当前函数。
  9. quit:退出LLDB调试器。

LLDB是一个功能强大的调试器,可以满足大部分调试需求。如果需要更详细的LLDB命令和用法,请参考苹果官方文档:LLDB官方文档

请注意,以上解决方案仅适用于OSX Catalina及更高版本。如果您使用的是其他操作系统或旧版本的OSX,可能需要采取其他方法来解决该问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何优雅调试段错误

int vfprintf(FILE *stream, const char *format, va_list arg) 这样,如果我们 grep 源码如果寻找到大量 fprintf,vfprintf 调用的话...$ gdb -batch -ex 'show debug-file-directory' The directory where separate debug symbols are searched...= -1) return -1 看函数名感觉是判断当前FILE 是否是宽字节流,推测是从 FILE 结构里取信息,结果 FILE 结构地址非法,所以内存读取错误,直接就段错误了。...than executable. 1283 ORIENT; 可以看到刚进入 gdb 就能看到一些有用信息,因为我们前面下载了源码文件,所以出错文件,行号,代码等都显示了出来,另外一个有用信息是...如果编译 a.out 时加了 -g 参数的话,具体行号和代码也会显示出来,如下: (gdb) bt #0 _IO_vfprintf_internal (s=0x0, format=0x560a28c3476a

4.4K52

【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)

对比交叉编译 和 普通编译 可执行文件 : 通过 file 命令对比可执行文件; -- 交叉编译 : 使用 arm-linux-gcc main.c -o hello-arm 命令交叉编译结果 hello-arm...02_gcc_demo]# file hello-x86 hello-x86: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically...x86 平台之间程序不能互相运行; -- CPU 大小端不对 : 大端格式程序不能运行在小端 CPU ; -- 库不对 : 使用 arm-linux-readelf -d hello-arm 查看程序运行需要库...arm-linux-gdb-7.5]# cat build-all #/bin/sh rm -fr gdb-7.5 rm -r /opt/arm-linux-gdb/ tar xvzf gdb-...arm-linu-gdb, 但是 /opt 下面的先配置, 因此事这个先生效; -- 默认 arm-linu-gdb : 是 7.5 版本; -- 交叉工具链中 gdb : 6.8版本,

1.8K20

怎样在VSCode中调试C++程序

或许本文是该系列最后一篇文章,可以通过一下文章阅读本系列以往章节 1.Linux中编译C++代码g++工具,以及g++常用操作指令 2.Linux下C++命令行编译示例 3.Linux下GDB...在开始之前,需要通过 VSCode官网下载对应操作系统最新版本,并安装到自己电脑。 这篇文章并不会涉及 VSCode 基本操作,比如创建项目、安装插件、设置 等等知识。...Debug 方式 set(CMAKE_BUILD_TYPE Debug) # 包含目录 include_directories(${CMAKE_SOURCE_DIR}/include) # 编译 add_executable...创建任务文件 通过 terminal -> Configure Default Build Task 菜单,并选择 Create tasks.json file from template -> Others...LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks

3.4K00

使用 Visual Studio Code 开发 LINUX C++ 应用

现在很多 IDE 都支持直接编写 LINUX 程序了,本文介绍 VSCode 如何完成这个工作。...选择已经配置好服务器右边“打开”按钮,会连接到远程服务器,并且自动在LINUX服务器安装一些 VS CODE 所需要软件,这需要你远程服务器可以连接到公网上 ?...其实 VSCODE 自带了代码格式化器,但是只有一种风格,如果想用 Google 风格,就要自己安装了 在服务器安装 clang-format: sudo apt install clang-format...在 VS Code 安装插件:Clang-Format 在打开代码页面,按鼠标右键,选择“文档格式化设置方式”,然后选择 CLang-Format ?...按 Ctrl+Shift+F 就可以格式化文档了 如果要设置格式化风格,在 Clang-Format 插件菜单点“齿轮”,选择“扩展设置”,然后在 Clang-format: FallbackStyle

3.6K31
领券