编译gdb,gdbserver
tar xjf gdb-7.4.tar.bz2
cd gdb-7.4/
./configure --target=arm-linux
make
把arm-linux-gdb复制到/bin目录
cd gdb/gdbserver/
./configure --host=arm-linux
cp gdbserver /work/nfs_root/first_fs/bin
编译要调试的应用,编译时加上-g选项
调试:
1. 在ARM板上
gdbserver 192.168.1.17:2345 ./test_debug
2. 在PC上
/bin/arm-linux-gdb ./test_debug
输入:target remote 192.168.1.17:2345
然后: 使用gdb命令来控制程序
另一种方法:
让程序在开发板上直接运行,当它发生错误时,令它产生core dump文件
然后使用gdb根据core dump文件找到发生错误的地方
在ARM板上:
1. ulimit -c unlimited
2. 执行应用程序 : 程序出错时会在当前目录下生成名为core的文件
在PC上:
3. /bin/arm-linux-gdb ./test_debug ./core
关键字:应用调试 GDB
引用地址:
应用调试-----使用GDB来调试应用程序
推荐阅读最新更新时间:2024-03-16 14:48
arm-linux-gdb+gdbserver环境搭建以及远程调试
0) gdb源码下载: http://ftp.gnu.org/gnu/gdb/ 1) 编译arm-linux-gdb 指定交叉编译工具链的位置 export PATH=$PATH:/usr/local/arm/3.4.1/bin 开始配置和编译 $cd gdb-6.6 $./configure --target=arm-linux --prefix=/usr/local/arm/gdb -v $make 中间会出现一些地方编译过去,如 gdb declared with attribute warn_unused_result 检查了下,发现是由于检查太严格了,把 Makefile 里面 -Wall
[单片机]
MCU应用系统调试方法
一、硬件调试方法: 单片机应用系统的硬件调试和软件调试是分不开的.许多硬件故障只有通过软、硬件联调才能发现,但一般是先排除系统中比较明显的硬件故障后才和软件一起联调。 1.常见的硬件故障 (1)逻辑错误 样机硬件的逻辑错误是由于设计错误和加工过程中的工艺错误而造成的,包括错线、开路、短路、相位错误、时序错误等,其中最常见的是短路故障。 (2)元器件错误 元器件错误的原因有器件损坏或性能不符合要求,电解电容、二极管的极性接反或集成块装反等。 (3)可靠性差 应用系统可靠性差的原因很多,如金属化孔、接插件接触不良、内部和外部的干扰、电压纹波系数过大、器件负载过重等均会造成系统的可靠性差。另外,走线和布置的不合理也会造成系
[单片机]
应用调试-----输入模拟器之编写测试模拟功能
自定义myprintk函数,把信息打印到mymsg文件内: 自定义 print函数缓存打印数据到环形缓冲区 ==================================================================== 触摸屏驱动源码: #include linux/errno.h #include linux/kernel.h #include linux/module.h #include linux/slab.h #include linux/input.h #include linux/init.h #include linux/se
[单片机]
嵌入式应用中的能耗调试(图)
在越来越多的嵌入式系统应用中,节能和效率已成为开发人员最优先考虑的因素。这种情况可能是出于以下原因:政府管制、增加电池寿命的需求或者仅仅是需要降低用电量。
为顺应这种趋势,出现了越来越多的“超低功耗”微控制器。不过,至少到近期为止,还没有出现能够与之配套的、为开发人员提供对系统能耗的详细监控的工具。
拥有低功耗MCU本身并不意味着能耗会更低:关键在于优化软件,不仅仅是功能性方面,而且还要顾及能源效率方面。全面控制MCU周边的硬件并优化软件和外设的总体使用率对于降低系统能耗而言是至关重要的因素。软件并不总被看作能量的消耗者,但每个时钟周期都会消耗电能,尽量减少它们,就能降低能耗。
节能型的嵌入式系统开发可以看作一种三段循
[嵌入式]