gdb调试
gcc参数:
-g : gdb
-Wall : 显示所有warning
-std : 指定gcc编译器用哪套编译标准(eg. gcc -std=c99)
调试过程中遇到的问题:
1、程序崩溃的调试
Python Exception <class ‘gdb.MemoryError’> Cannot access memory at address 0x7ffc041c77e8:
出现这个问题的原因:执行exe文件之前用ulimit -c 1,设置了超过指定大小的core文件将不被编写。
查看限制大小:ulimit -c
解决:
法1、重新设置大小
法2、关闭终端,重新打开,此时之前的设置会消失,恢复为默认。
该服务器默认为不限制core文件大小。
法3、重新设置为不限制文件大小:
ulimit -c unlimited。
不过用公司的电脑,可能由于不是root用户,出现权限不够的问题,而无法修改。
gdb + gdb server 调试
1、下载gdb
https://www.sourceware.org/gdb/download/
2、下载完解压
进入目录
执行
./coufigure --target=arm-linux
make