1.
编译代码时,需要加上
-g
2.
开发板上运行
# ulimit -c unlimited -
此处是设置生成的
core
文件大小
在开发板上运行时,如果有断错误会有
Segmentation fault
(core dumped)
,
红色标记生成了
core
文件。
如果没有生成
core
文件一般是没有设置
core
文件大小
3.
将可执行程序
sea,
和生成的
sea.***core
文件拷到交叉编译服务器(如
192.168.189.109
)上
.
4.
在服务器上用交叉编译器自带的
gdb
进行出错位置的定位
(
1
)将
openwrt
的工具链加到
PATH
中,下面是红色
/yourpath
是我存放
openwrt-3.10.14
的路径,需要替换成你自己的编译路径
#export PATH=$PATH:
/yourpath/
openwrt-3.10.14/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin
#
mipsel-openwrt-linux-uclibc-gdb sea sea.946.11.1450080706.core
使用
bt
命令即可看到程序出错的地方。