• <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
            數(shù)據(jù)加載中……

            GDB在Mac下的調(diào)試信息

            上次說了GDB的pretty printer,這次來說說調(diào)試程序的問題。

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

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

            我們?nèi)绻侵苯泳幾g生成可執(zhí)行文件:

            g++ test.cpp -g -o test

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

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

            這次我們gdb test再調(diào)試,會發(fā)現(xiàn)GDB找不到調(diào)試符號信息!

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

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

            dsymutil test

            再然后,就可以用GDB順利調(diào)試了。

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

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

            精品多毛少妇人妻AV免费久久| 99热成人精品热久久669| 久久久久97国产精华液好用吗| 国产综合免费精品久久久| 欧美与黑人午夜性猛交久久久| 亚洲∧v久久久无码精品| A级毛片无码久久精品免费| 亚洲国产精品无码久久九九| 久久人爽人人爽人人片AV| 久久久久九国产精品| 亚洲AV日韩精品久久久久久| 国内精品久久久久久久影视麻豆| 九九精品久久久久久噜噜| 久久精品国产亚洲欧美| 久久人人爽人人人人爽AV| 国产亚州精品女人久久久久久 | 久久久国产精品网站| 久久人人爽人人爽人人片AV高清| 777久久精品一区二区三区无码 | 99蜜桃臀久久久欧美精品网站| 久久免费国产精品一区二区| 亚洲av成人无码久久精品| 伊人久久无码精品中文字幕| 国产精品美女久久久久av爽| 久久99久久99小草精品免视看| 97久久国产露脸精品国产| 伊人色综合久久天天网| 久久伊人五月天论坛| 国产精品无码久久久久| 999久久久国产精品| 女人香蕉久久**毛片精品| 99麻豆久久久国产精品免费| 久久久久人妻一区精品色| 亚洲女久久久噜噜噜熟女| 精品久久久中文字幕人妻| 久久无码专区国产精品发布| 伊人热热久久原色播放www| 久久久久国产精品嫩草影院| 97久久国产露脸精品国产| 久久精品www人人爽人人| 国产精品久久久久久久久免费|