现在的位置: 首页 > 综合 > 正文

使用GDB调试Android 4.0中的WebKit

2018年05月01日 ⁄ 综合 ⁄ 共 1435字 ⁄ 字号 评论关闭

转载http://blog.csdn.net/su_yong/article/details/7021389 

使用GDB调试Android 4.0中的WebKit


      昨天在网上看到了有人用gdb调试Android中的WebKit,今天试了好一会儿,确实可行。

      以下是步骤:


      1. 进入android系统源码根目录,然后执行

                source build/envsetup.sh


      2. 启动模拟器,并打开浏览器

                emulator


      3. 在终端中执行                

                adb forward tcp:5039 tcp:5039


       4. 打开另一个终端,执行

                adb shell ps

                找到 com.android.browser 进程号


       5. 执行

                adb shell gdbserver :5039 --attach pid

                pid为 com.android.browser 进行号

                正常反馈:

                 Attached; pid = ****

                 Listening on port 5039


        6.  回到第一个终端,导出环境变量,adb, arm-eabi-gdb等的路径,在执行gdbclient报错时,可将相应的命令 的路径导出

                export PATH=/android/out/host/linux-x86/sdk/android-sdk_eng.suyong_linux-x86/platform-tools:$PATH
                export PATH=/android/prebuilt/./prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin/:$PATH
                export PATH=/android/prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin:$PATH


                现在执行命令

                gdbclient

                成功的话就会加载一系列的符号表。试了一下设置断点,成功地在代码中中断了下来。下面要做的就                   是熟悉GDB调试命令了。


         7. 在gdb中设置断点                                                              

                  b  FrameLoaderClientAndroid.cpp:888


         8.  在模拟中用浏览器打开任一网页,就会进入断点了。


         我主要参考了http://blog.csdn.net/zouxueping/article/details/5877970,在此表示感谢,另外也参考了一下http://blog.csdn.net/dlmu2001/article/details/6904211

抱歉!评论已关闭.