GDB交叉编译与问题解决

2023-10-26

交叉编译

#!/bin/bash
  
./configure \
        CC=/home/sws/toolchain/t3/usr/bin/arm-linux-gnueabihf-gcc \
        CXX=/home/sws/toolchain/t3/usr/bin/arm-linux-gnueabihf-g++ \
        AR=/home/sws/toolchain/t3/usr/bin/arm-linux-gnueabihf-ar \
        AS=/home/sws/toolchain/t3/usr/bin/arm-linux-gnueabihf-as \
        LD=/home/sws/toolchain/t3/usr/bin/arm-linux-gnueabihf-ld \
        --target=arm-linux \
        --host=arm-linux  \
        --prefix=/home/sws/disk-0/tool/gdb
make 
make install

Program received signal SIGILL, Illegal instruction

  1. SIGILL
    SIGILL进程在运行过程中会收到SIGILL信号,此类错误是由操作系统发送给进程的。SIGILL是某个进程中的某一句不能被CPU识别指令,这些指令可能是一些形式错误、未知或者特权指令
    链接: SIGILL详细说明
  2. 解决办法
    handle SIGILL nostop noprint
    

Program received signal SIGPIPE, Broken pipe

  1. 信号
    信号是一种软中断,是一种处理异步事件的方法。一般来说,操作系统都支持许多信号。尤其是UNIX,比较重要应用程序一般都会处理信号。UNIX定义了许 多信号,比如SIGINT表示中断字符信号,也就是Ctrl+C的信号,SIGBUS表示硬件故障的信号;SIGCHLD表示子进程状态改变信号; SIGKILL表示终止程序运行的信号,等等。信号量编程是UNIX下非常重要的一种技术。
    GDB有能力在你调试程序的时候处理任何一种信号,你可以告诉GDB需要处理哪一种信号。你可以要求GDB收到你所指定的信号时,马上停住正在运行的程序,以供你进行调试。你可以用GDB的handle命令来完成这一功能
  2. handle
    在GDB中定义一个信号处理。信号可以以SIG开头或不以 SIG开头,可以用定义一个要处理信号的范围(如:SIGIO-SIGKILL,表示处理从SIGIO信号到SIGKILL的信号,其中包括SIGIO, SIGIOT,SIGKILL三个信号),也可以使用关键字all来标明要处理所有的信号。一旦被调试的程序接收到信号,运行程序马上会被GDB停住,以 供调试。其可以是以下几种关键字的一个或多个。
命令 说明
handle SIGNAL nostop 被调试的程序收到信号时,GDB不会停住程序的运行,但会打出消息告诉你收到这种信号
handle SIGNAL stop 被调试的程序收到信号时,GDB会停住你的程序
handle SIGNAL print 被调试的程序收到信号时,GDB会显示出一条信息
handle SIGNAL noprint 被调试的程序收到信号时,GDB不会告诉你收到信号的信息
handle SIGNAL pass noignore 被调试的程序收到信号时,GDB不处理信号。这表示,GDB会把这个信号交给被调试程序会处
handle SIGNAL nopass ignore 被调试的程序收到信号时,GDB不会让被调试程序来处理这个信号
info signals 哪些信号在被GDB检测中
info handle 哪些信号在被GDB检测中
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GDB交叉编译与问题解决 的相关文章

  • 如何使用 C# 获取打印作业状态

    我可以打印文档 但不知道如何获取其状态 我查阅了很多资源 MSDN http support microsoft com kb 322091 检查工作状态的链接 https stackoverflow com questions 55637
  • 指向基类的基本多态指针

    虽然我已经在 C 领域工作了一段时间 但直到现在我才需要使用多态特性 而且我对它们非常感兴趣 如果我有一个基类ClassA和另一个ClassB从中衍生出来 我明白我可以拥有virtual中的成员函数ClassA即 当实施于ClassB 将被
  • QSpinBox 具有用于十六进制输入的 Unsigned Int

    这里写了很多关于 QSpinBox 使用 int 作为其数据类型的限制的问题 人们通常希望显示更大的数字 就我而言 我希望能够以十六进制显示无符号 32 位整数 这意味着我希望我的范围为 0x0 0xFFFFFFFF 正常的 QSpinBo
  • 如何使用 Dapper 将字符串作为 NULL 发送到 SQLServer?

    我有一个场景 C 中的字符串可以是null 我需要它是NULL在 SQL Server 上 我使用 Dapper 将其发送到 SQLServer 查询如下 connection Query
  • 设置 C# 可选参数的默认值

    每当我尝试将可选参数的默认值设置为资源文件中的某些内容时 我都会收到以下编译时错误 message 的默认参数值必须是编译时常量 有什么方法可以改变资源文件的工作方式来实现这一点吗 public void ValidationError s
  • 在 C 中从数组创建子数组的最佳方法

    我有一个数组说a 3 1 2 5 我必须创建另一个数组a2 2 2 5 我尝试过的是创建一个新数组a2 只需复制所需位置范围内的所有元素即可 在C语言中还有其他方法可以实现这一点吗 memcpy a2 a 1 2 sizeof a
  • std::ostream 需要功能帮助

    我需要有人逐步向我解释这些代码行 并且我需要一些帮助来使用 ostream 和简单的示例 谢谢 inline std ostream operator lt lt std ostream os const Telegram t os lt
  • EF Core:同时使用ID作为主键和外键

    我有两个实体 Prospect and Person 我想做的是使用Prospect ID作为主键Prospect表并作为外键PersonID 我的想法是对两个实体使用相同的 ID 而不需要PersonID on my Prospect实体
  • 为什么无法在 android 中包含 iostream?

    已安装 android ndk r7 并尝试编译 cpp 文件 include
  • 如何使用 C# 从数据库中检索多个图像

    我有一个包含9张图像的数据库 这些图像不断变化 所以我无法直接设置src在 HTML 中 img 标签来显示 9 个图像 我必须从数据库中选择它们并相应地绑定它们 我可以使用以下命令检索并打印 1 张图像Response BinaryWri
  • std::async 可以调用 std::function 对象吗?

    是否可以使用 std async 调用使用 std bind 创建的函数对象 以下代码无法编译 include
  • Haskell FFI - 你能从 Haskell 数据结构中获取 C 指针吗?

    我有很多 C 结构体 结构如下 typedef struct unsigned int a unsigned int b StructA 还有很多功能 比如 void doSomethingWith StructA StructB Stru
  • C#:模拟内存泄漏

    我想用c 编写以下代码 a 模拟内存泄漏的小型控制台应用程序 b 小型控制台应用程序 它将调用上述应用程序并立即释放它 模拟管理内存泄漏问题 换句话说 应用程序 b 将不断调用并释放应用程序 a 以模拟如何遏制 叛逆 内存泄漏应用程序 而不
  • 树视图上的 VirtualizingStackPanel 不是虚拟化

    我在这里遇到一个问题 我想在 TreeView 中显示一些项目 大约 100 000 个元素 如果我使用默认的 WPF TreeView 一切似乎都可以工作 但如果我使用自定义 TreeView 目前只有 ItemsControl 虚拟化似
  • .NET:十进制到舍入字符串

    如果我有一个decimal 如何获得带有两位小数的字符串版本 这不起作用 Math Round myDecimal 2 ToString 0 00 不要使用大括号 它们用于使用以下命令将格式化值嵌入到较长的字符串中string Format
  • INotifyPropertyChanged 与线程

    我有一个 BindingList
  • __syncthreads() 死锁

    如果只有部分线程执行 syncthreads 会导致死锁吗 我有一个这样的内核 global void Kernel int N int a if threadIdx x
  • Excel 中的单元格“数字存储为文本”

    我有一个 C 程序 它获取旧报告的文本文件并映射到 Excel 工作表 但对于交易单元格 它输出为 数字存储为文本 这不允许 任何格式 我们想要显示 1 000 00 但它仅显示为 1000 有什么办法可以得到这种格式吗 这些列是余额和金额
  • 有条件地使用按位运算符

    条件运算符如何使用按位运算符表示 这是一个家庭作业问题 我必须仅使用按位运算来实现条件运算符 那就很简单了 如果if允许使用语句 但它必须是严格的按位运算符 仅运营商 gt gt and lt lt 可以使用 不if可以使用语句或循环 该函
  • gcc 不会编译和运行 MySQL C 库

    include

随机推荐

  • vuecli引入vue-amap地图组件(高德地图SDK)

    指南 组件 vue amap 1 前往高德开放平台注册开发者账号 在控制台申请Key 高德开放平台 高德开放平台 高德地图API 申请Key 获取Key 创建工程 开发指南 Web服务 API 高德地图API 2 安装vue amap np
  • 虚拟机配置

    1 Finalshell下载 Mac http www hostbuf com downloads finalshell install pkg Windows http www hostbuf com downloads finalshe
  • clang static analyzer源码分析(二)

    引子 在clang static analyzer源码分析 一 中我们简单介绍了 AnalysisConsumer 这个类以及基于AST树的语法层级的代码检查 今天简单介绍下 PathSensitiveChecks 的概念 以及如何对cla
  • STL:vectoer

    首先包含头文件 include
  • 重参数化技巧:高斯分布采样

    1 高斯分布采样 我们现在得到了有样本X得到的分布X N mu sigma 2 通过采样我们得到确定的隐变量向量 从而作为解码器的输入 采样这个操作本身是不可导的 但是我们可以通过重参数化技巧 将简单分布的采样结果变换到特定分布中
  • Fabric上搭建Hyperledger caliper进行性能测试

    Fabric介绍 推荐文章 Hyperledger 超级账本 是Linux基金会旗下的项目 Fabric是Hyperledger项目里最早也是目前应用最广泛的区块链项目 最初由IBM开发 后来捐助给基金会 是一个开源的企业级需要许可的分布式
  • Git Gui客户端软件连接及上传文件

    1 下载客户端软件 2 上传那个文件就在哪个文件下 git gui here 之后选择当前的目录创建仓库 3 关于操作在一下连接有 https blog csdn net qq 15509267 article details 836170
  • 关于mybatis使用pageHelper分页插件问题

    关于mybatis使用PageHelper分页插件冲突以及解决方案 分页插件其实 可以提高我们的开发效率 如果我们自己手写 1会嫌麻烦 2需要写两条一条写count一条写list 虽然他底层也是这么实现的 但是不需要我们手动来写 好的工具能
  • 大数据的入门级学习

    大数据方向的工作目前分为三个主要方向 01 大数据工程师 02 数据分析师 03 大数据科学家 04 其他 数据挖掘本质算是机器学习 不过和数据相关 也可以理解为大数据的一个方向吧 由于本人曾是大数据工程师的角色 我就这个方向做一些介绍 本
  • 从0开始使用vue-element-admin

    目录 安装node js及npm 安装nrm 安装vscode 汉化 推荐安装一些好用的扩展 安装vue element admin 框架登陆原理简单分析 本教程经亲测支持最新版4 0 1vue element admin 安装node j
  • RabbitMQ宕机后,消息100%不会丢失吗

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 这篇文章 给不太熟悉MQ技术的同学 介绍一个生产环境中可能会遇到的问题 目前为止 你的RabbitMQ部署在线上服务器了 对吧 然后订单服务和仓储服务都可以基于Rab
  • 统计学习方法笔记(二)感知机

    感知机于1957年由Rosenblatt提出 是一种线性分类模型 属于判别模型 直接学习判别函数 是神经网络和支持向量机的基础 对于感知机的学习推导首先要知道他的模型是什么 然后是学习策略 损失函数 最后是学习算法 1 感知机的模型 假设空
  • vue设置全局时间格式化

    vue前台需要用户能看得懂的时间格式如常见的 2021 03 10 12 02 35 但是后台数据库则需要时间格式如LocalDateTime 2021 03 10T15 31 01 或者Date类型的 如果数据不经过处理 直接显示 肯定可
  • 如何在Windows上搭建web站点,并发布到公网?1-1

    系列文章 Windows用户如何安装使用cpolar内网穿透工具 如何在Windows上搭建web站点 并发布到公网 1 1 如何在Windows上搭建web站点 并发布到公网 2 2 如何在Windows下搭建WordPress博客站点
  • maven 引入qrcode.jar

    mvn install install file Dfile e QRCode jar DgroupId QRCode DartifactId QRCode Dversion 3 0 Dpackaging jar 3 在pom xml中增加
  • 逆变器STM32储能逆变器 BOOST 全桥 基于STM32F103设计,具有并网充电、放电

    逆变器STM32储能逆变器 BOOST 全桥 基于STM32F103设计 具有并网充电 放电 并网离网自动切换 485通讯 在线升级 风扇智能控制 提供过流 过压 短路 过温等全方位保护 基于arm的方案区别于dsp 有PCB 原理图及代码
  • 图像质量评估指标——SSIM介绍及计算方法

    图像质量评估指标 SSIM介绍及计算方法 SSIM全称为Structural Similarity 即结构相似性 用于评估两幅图像相似度的指标 常用于衡量图像失真前与失真后的相似性 也用于衡量模型生成图像的真实性 如图像去雨 图像去雾 图像
  • vue 集成ag-grid 组件,通过筛选条件操作列显示与隐藏

    关键代码 this columnApi setColumnVisible item false 此处item的位置 为ag grid列数据里面的colid 如无此项 可以用field的值来代替
  • 使用IBM SPSS Modeler进行随机森林算法预测

    IBM SPSS产品系列最主要的两款软件为IBM SPSS Statistics和IBM SPSS Modeler IBM SPSS Statistics主要用于统计分析 如均值比较 方差分析 相关分析 回归分析 聚类分析 因子分析 非参数
  • GDB交叉编译与问题解决

    GDB使用 交叉编译 Program received signal SIGILL Illegal instruction Program received signal SIGPIPE Broken pipe 交叉编译 bin bash