• <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

            記憶中的閃光,總會(huì)蒙塵。
            隨筆 - 6, 文章 - 0, 評(píng)論 - 0, 引用 - 0
            數(shù)據(jù)加載中……

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

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

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

            但是在Mac下面,有點(diǎn)小問題。

            我們?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)試,會(huì)發(fā)現(xiàn)GDB找不到調(diào)試符號(hào)信息!

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

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

            dsymutil test

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

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

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

            久久久久亚洲精品男人的天堂| 久久久久99精品成人片 | 久久超碰97人人做人人爱| 国产午夜精品久久久久九九电影 | 2021国内久久精品| 精品国产婷婷久久久| 久久国产福利免费| 久久精品国产亚洲精品2020| 亚洲综合伊人久久大杳蕉| 色老头网站久久网| 亚洲国产小视频精品久久久三级 | 99国产欧美久久久精品蜜芽| 国内精品伊人久久久影院| 久久综合鬼色88久久精品综合自在自线噜噜 | 久久人人爽人人爽人人片AV东京热| 精品国产91久久久久久久| 久久偷看各类wc女厕嘘嘘| 久久成人国产精品| 亚洲精品高清国产一久久| 国产成人久久777777| 精品无码久久久久久国产| 一级做a爰片久久毛片毛片| 日本五月天婷久久网站| 久久精品午夜一区二区福利| 欧美久久综合性欧美| 亚洲?V乱码久久精品蜜桃 | 成人精品一区二区久久| 免费一级欧美大片久久网| 伊人色综合久久天天人手人婷| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 亚洲欧洲中文日韩久久AV乱码| 久久夜色撩人精品国产| 久久精品国产精品亚洲精品| 精品熟女少妇a∨免费久久| 99久久婷婷国产一区二区| 青青草原综合久久大伊人| 久久777国产线看观看精品| 久久婷婷人人澡人人| 亚洲国产精品无码久久一线| 丁香五月综合久久激情| 亚洲欧美伊人久久综合一区二区 |