• <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 閱讀(882) 評論(0)  編輯 收藏 引用 所屬分類: C++MacGDB

            久久久久久久久久久久中文字幕 | 久久精品国产99国产精品| 午夜精品久久久久9999高清| 久久91精品久久91综合| 国产精品无码久久综合| 亚洲AV日韩AV天堂久久| 日韩精品无码久久久久久| 人人狠狠综合久久88成人| 久久精品亚洲AV久久久无码| 久久久久亚洲AV无码专区首JN| 久久人妻少妇嫩草AV蜜桃| 日本精品久久久久影院日本| 麻豆久久| 久久人人爽爽爽人久久久| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 久久国产AVJUST麻豆| 伊人色综合九久久天天蜜桃| 无码人妻少妇久久中文字幕| 一本久久免费视频| 久久久久成人精品无码中文字幕 | 亚洲乱码精品久久久久..| 亚洲精品乱码久久久久久自慰| 久久亚洲AV成人无码电影| 久久r热这里有精品视频| 久久精品亚洲乱码伦伦中文| 亚洲七七久久精品中文国产| 久久久精品人妻一区二区三区蜜桃| 91精品国产91久久久久福利| 99久久www免费人成精品| 亚洲精品无码专区久久同性男| 久久精品国产亚洲AV影院| 精品久久久久中文字幕日本| 国产99久久久国产精免费| 久久综合色老色| 香蕉久久一区二区不卡无毒影院| 久久国产影院| 国产亚洲综合久久系列| 亚洲国产香蕉人人爽成AV片久久| 韩国免费A级毛片久久| 久久久午夜精品| 久久成人永久免费播放|