热度 17
2014-12-17 01:40
1931 次阅读|
0 个评论
我在编写应用程序时,并非直接编译、下载程序到目标板、运行,而是首先将代码在 ubuntu下测试验证 ,如果OK,然后才下载到目标板运行测试,这样可以避免很多程序问题,我觉得这是一种很好的开发习惯。 在嵌入式linux开发过程中,出现BUG是在所难免的,这时就需要用到调试技术了,最常用、最简单的调试方法当属printf打印了。 如果ubuntu测试通过,程序下载到板子里出现BUG,串口还出现错误提示信息,这类错误用printf打印,定位错误就可以解决。并非每次都这么幸运都会有错误提示信息,我在项目开发中就曾经遇到过,进程运行一段时间,就莫名其妙掉了,没有任何错误打印信息,printf打印就显得无能为力了,后来我用嵌入式gdb调试就解决这种BUG,这种情况决大部分是内存的问题。 嵌入式gdb调试步骤如下: 1.首先搭建嵌入式gdb环境,网络上有很多介绍,这里不再描述,主要介绍嵌入式gdb使用方法。 2.目标板和服务器(你的pc机ubuntu) 需在同一局域网内 ,可以通过wifi相连,或者网口相连; 3.目标板有gdbserver,在串口调试软件上输入: ./gdbserver linux服务器ip:端口(自己定义) 可执行程序名称 4.服务器ubuntu下 输入命令:arm-linux-gdb 可执行程序名称 target remote 目标板ip:端口 c( 继续执行输入c,而不是r )