调试手段

1.

    #ifdef  DEBUG

        正文段

        printf("comiled:"_ _DATA_ _"at" _ _TIME_ _"/n");

        printf("this is %d of file %s,%s/n",_ _LINE_ _,_ _FILE_ _,_ _FUNCTION_ _);

   #endif 

 

gcc -D宏名称(DDEBUG)编译的时候定义宏

 

2.

   assert(条件)  不满足条件则出错

 

3.

   electric fence可以检测越界错误(linux) -lefence(链接)

       apt-cache search  (字符串)    查找相关字符串的软件包命令

       apt-get install                       安装软件命令

       dpkg-query  -L  软件包           查看软件包中包含其他什么软件包命令

   valgrind        可以检测内存泄露

   valgrind --leak-check=yes -V 可执行文件    调试内存泄露命令   -V表示显示详细信息

 

4.  Gcc –o –g  result main.c

     Gdb ./result

     run

     Backtrace  列出了出现错误的地方

     Print 变量    可以观看值

     Break 行数 Next step单步执行  continue运行到下一个断点

你可能感兴趣的:(linux嵌入式)