iMX6Q调试篇-Linux程序开发使用gdb调试
来源:互联网 发布:mac如何用搜狗输入法 编辑:程序博客网 时间:2024/05/17 21:43
平台:OKMX6Q-S2平台
环境:Linux
一、cmd程序
1、编写一个简单地崩溃程序dest.c,如下:
#include "stdio.h"
int main()
{
int *p=NULL;
*p=1; //给指针赋值
return 1;
}
2、编译
arm-fsl-linux-gnueabi-gcc -g -o 11 dest.c
注意:一定要在命令中加上-g参数,这样使用gdb调试时才能看到具体是程序的哪一行出了错误。
3、将可执行文件11拷贝到开发板,运行程序
root@freescale /$ulimit -c unlimited 该命令的作用就是生成core文件,就是程序存在段错误时运行产生的文件
root@freescale /$ ./11
Segmentation fault (core dumped)
这时在根目录下已经产生了core文件
4、将产生的core文件与之前的11文件放在电脑上的同一目录下,在命令行使用gdb进行源码级调试
如图可以看到第5行指针赋值出错已经列出。
二、Qt程序
1、Qt程序的调试过程与命令行大同小异,首先编写崩溃程序如下
void MainWindow::on_checkBox_toggled(bool)
{
int *p=NULL;
*p=1;
}
当勾选CheckBox的时候,程序崩溃
2、修改Qt程序的Makefile,
在图中位置增添-g参数,再进行编译
2、这里将程序设置成自启动,在启动脚本中也需要加上ulimit -c unlimited命令,
在程序执行之前执行该命令
3、同样将core文件与可执行文件放在电脑上的同一目录下,在命令行使用gdb进行源码级调试
同样代码错误也清楚显示出来
------------------------------------------------ 产品信息 ------------------------------------------------
四核 FETMX6Q-S 核心板
OKMX6DL-S2 开发板
关于使用平台信息 请关注http://www.forlinx.com/73.htm
- iMX6Q调试篇-Linux程序开发使用gdb调试
- linux GDB调试程序
- gdb 调试 linux程序
- Linux GDB调试++程序
- linux gdb调试程序
- 使用GDB调试开发板程序
- 使用gdb 调试程序
- 使用gdb调试程序
- 使用GDB 调试程序
- 使用GDB调试程序
- 使用gdb调试程序
- 使用GDB调试程序
- 使用GDB调试程序
- 使用gdb调试程序
- 使用GDB调试程序
- 使用GDB调试程序
- 使用GDB调试程序
- 使用gdb调试程序
- SQL 优化
- echarts 如何实现同心圆效果
- 有一个高度自适应的div,里面有两个div,一个高度100px,希望另一个填满剩下的高度。
- php实现字符串翻转,使字符串的单词正序,单词的字符倒序
- HDU 6035 Colorful Tree(树形dp)
- iMX6Q调试篇-Linux程序开发使用gdb调试
- 开发微信支付所碰过的壁
- WPF跨线程调用和Dispatcher
- Leetcode-1:Two Sum
- altas mysql-proxy安装配置
- 方法重写与方法重载
- String类的常用方法
- MVC入门 从Controller到VIew 之间传值学习
- WisKey的眼神(GCD)