<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                Docker啟動過程中,要運行gdb,需要在啟動時加上--privileged=true參數,具體可以看: dockercontainer下gdb無法正常工作的解決辦法 ``` docker run --privileged=true -it -v ~/dev/share:/home/binss --name="gpp" ubuntu /bin/bash ``` 下面是一段簡單的代碼: ![](https://img.kancloud.cn/4a/2a/4a2a96aa950359a9091422805261fb43_640x320.png) ``` gcc -g3 -O0 -gdwarf-4 -ggdb test.c -o test ``` 運行出core,我們通過ulimit -c unlimited在當前文件夾下產生core文件,具體可以看 Linux 下如何產生core文件(core dump設置) 發現是沒有temp文件導致的,創建touch temp后繼續運行。 gdb a.out\> l\> b 5\> r\> s 出現錯誤 \_IO\_new\_fopen (filename=0x5555555547e6 "./temp", mode=0x5555555547e4 "r") at iofopen.c:8888 iofopen.c: No such file or directory. 這是需要我們去下載glibc源文件 root@28dcf784e1be:/home/binss# ldd a.outlinux-vdso.so.1 (0x00007ffd7b3c1000)libc.so.6 => /lib/x86\_64-linux-gnu/libc.so.6 (0x00007f63d95b1000)/lib64/ld-linux-x86-64.so.2 (0x00007f63d9ba4000) 依賴的是 libc.so.6 直接查看 /lib/x86\_64-linux-gnu/libc.so.6root@28dcf784e1be:/home/binss# ll /lib/x86\_64-linux-gnu/libc.so.6lrwxrwxrwx 1 root root 12 Apr 16 20:14 /lib/x86\_64-linux-gnu/libc.so.6 -> libc-2.27.so\*執行 libc-2.27.so 接著我們下載libc的源代碼,需要修改下source.list 具體的源可以查看:https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/,注意打開deb-source,下載源代碼。 安裝完代碼后,我們就可以開始調試了。 ## GDB指定源文件目錄 ``` (gdb) directory /home/binss/glibc-2.27/libio ``` 設置好源代碼搜索目錄,下面開始調試。 通過gdb可以直接定位到fwrite的源碼,源碼如下,位于./libio/iofwrite.c。 設置gdb選項 ``` set print pretty on ``` ## gdb調試宏定義 怎么在gdb中調試宏,可以參照https://sourceware.org/gdb/onlinedocs/gdb/Macros.html ``` gcc -g3 -O0 -gdwarf-2 test.c ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看