zoukankan      html  css  js  c++  java
  • 利用GDB调试Android里的程序

    0.编译整个源码,以便得到所有的调试符号,在froyo/out/target/product/$PRODUCT_NAME/symbols

    1.启动模拟器中的webbrowser,登入到adb shell中, 利用ps命令查看其进程ID, 然后启动gdbserver:
      # gdbserver :5049 /system/bin/app_process
    这个命令表示gdbserver监听5049端口,以便给其他gdbclient连入后调试app_process

    2.在本机的shell中,使用#adb forward tcp:5049 tcp:5049来转发到本地tcp端口上

    3.本地使用froyo/prebuilt/下的arm-eabi-gdb来进行连接gdbserver,先要对gdb进行设置,如下
    新建一个文件# cat << EOF > /tmp/gdb.cmd
                > set solib-absolute-prefix froyo/out/target/product/$name/symbols
                > set solib-search-path froyo/out/target/product/$name/symbols/system/lib
                > EOF
    接着执行: 
    # ./arm-eabi-gdb -x /tmp/gdb.cmd \
        froyo/out/target/product/$name/system/bin/app_process
    gdb > target remote xxx.xxx.xxx.xxx:5049

    gdb > 设置断点,进行调试

    run时报错The "remote" target does not support "run".  Try "help target" or "continue".但断点之后用c,可以运行。

  • 相关阅读:
    JS轮播图
    jquery 60秒倒计时
    jQuery 显示加载更多
    jQuery 显示加载更多
    this指针在不同情况下的指代
    web-app1--移动端等比例代码
    无障碍阅读
    javascript+dom 做javascript图片库
    初探html5---Video + DOM(视频播放)
    14个有效提高网站Banner点击率的设计技巧分享
  • 原文地址:https://www.cnblogs.com/leino11121/p/2381891.html
Copyright © 2011-2022 走看看