• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Clear

            記憶中的閃光,總會蒙塵。
            隨筆 - 6, 文章 - 0, 評論 - 0, 引用 - 0
            數據加載中……

            GDB在Mac下的調試信息

            上次說了GDB的pretty printer,這次來說說調試程序的問題。

            在Linux或者Windows下面,寫好代碼,g++編譯,連接,調試,一切很順暢。

            但是在Mac下面,有點小問題。

            我們如果是直接編譯生成可執行文件:

            g++ test.cpp -g -o test

            ok,我們用GDB調試,沒有問題。
            但是如果我們分兩步,編譯和連接分開的話:

            g++ test.cpp -g -c -o test.o
            g++ -o test test.o

            這次我們gdb test再調試,會發現GDB找不到調試符號信息!

            兩次生成有什么不同呢?
            一次編譯生成的test,旁邊有一個test.dSYM,而單獨連接的test,沒有這個。

            test.dSYM就是調試符號信息。
            要想生成這個東西,也簡單,運行dsymutil就可以了:?

            dsymutil test

            再然后,就可以用GDB順利調試了。

            g++直接生成可執行文件的時候,會幫我們調用一次dsymutil,但是單獨連接的時候卻不會做這個,這就是造成差別的原因。

            posted on 2012-10-28 23:47 Clear 閱讀(875) 評論(0)  編輯 收藏 引用 所屬分類: C++ 、MacGDB

            欧美久久久久久精选9999| 日产久久强奸免费的看| 成人妇女免费播放久久久| 91精品国产综合久久久久久| 久久综合狠狠综合久久激情 | 久久久久九国产精品| 少妇久久久久久被弄高潮| 久久精品国产一区二区电影| 久久久亚洲AV波多野结衣| 久久久精品一区二区三区| 久久婷婷人人澡人人爽人人爱| 99久久精品国产麻豆| 国产69精品久久久久观看软件 | 九九精品99久久久香蕉| 久久精品国产清自在天天线| 亚洲AV日韩AV永久无码久久| 久久精品中文字幕一区| 久久精品国产91久久综合麻豆自制| 亚洲人成网站999久久久综合| 久久九九亚洲精品| 久久发布国产伦子伦精品| 伊人色综合久久天天人守人婷| 狠狠久久亚洲欧美专区| 五月丁香综合激情六月久久| 久久毛片免费看一区二区三区| 中文字幕亚洲综合久久| 久久99精品国产一区二区三区| 久久精品国产亚洲av水果派| 亚洲AV无码久久精品成人| 中文国产成人精品久久不卡 | 色青青草原桃花久久综合| 国产精品热久久无码av| 久久99热狠狠色精品一区| 国产精品久久久天天影视| 久久96国产精品久久久| 国产高潮国产高潮久久久| 波多野结衣中文字幕久久| 精品乱码久久久久久久| 久久精品国产亚洲麻豆| 97热久久免费频精品99| 久久99国产综合精品|