• 源码调试debug_info 的作用和使用方法


      在他通过gcc来编译程序时,在map文件中,经常会遇到如下的情况:

    .debug_info 0x002191b6 0x1aa9 XXX

    .debug_info 0x0021ac5f 0xce4 XXX
    .debug_info 0x0021b943 0x9cf XXX
    .debug_info 0x0021c312 0x1119 XXX
    最近遇到了一些问题,需要查看map文件中的信息时候,发现上面的一些debug信息一直在

    map文件中,这些到底是什么作用呢?通过什么来生成的呢? 看来自己知识体系中还存在不少

    漏洞,要补一补了。

      通过查阅GNU的官方文档,才发现这个gcc是通过添加编译选项-g来控制输出编译调试信息的

    通过这个调试信息,能方便的调试程序,具体调试过程和使用方法见文档:

      http://blog.techveda.org/howsourcedebuggerswork/ 

    这篇文档写的很好,介绍的相当清晰。

      笔者尝试过,通过在编译选项中加入如下,可以很方便的来控制是否有debug信息编译出来,

    KBUILD_CFLAGS   += -g

    把这个去掉debug信息就没了。

      gcc参考文档:

    https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html 

  • 相关阅读:
    vmodel.lazy详解
    import Vue from 'vue'如何解释?
    ubuntu安装deb文件包
    vue安装
    多线程和多进程的区别
    SLH(Location Sensitive Hash)学习
    hadoop学习笔记(一)简介
    [转]关于协同过滤的好文章
    Linear Regression练习
    regularized 线性回归练习
  • 原文地址:https://www.cnblogs.com/dylancao/p/8403533.html
Copyright © 2020-2023  润新知