查看: 1493|回复: 0

[BBB试用之旅5] ”Eclipse+gdbserver+gdb-multiarch“远程调试

[复制链接]
  • TA的每日心情
    难过
    2017-4-18 09:57
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2017-3-6 08:57:22 | 显示全部楼层 |阅读模式
    分享到:
    系列阅读:https://jingyan.eeboard.com/category/53
    乘热打铁,在上篇 “EclipseCDT搭建开发环境”后再尝试在Eclipse中远程调试 BBB。
    1. BBB中安装gdbserver

    2.在远程宿主机安装gdb-multiarch
      
    3.启动gdbserver 并在端口12345监听,
    在SSH terminal中输入   gdbserver 192.168.1.105:12345 helloTest,  指定目标板的IP和监听端口号,
    下图所示gdbserver已经正常启动了,并等待客户端程序gdb的连接。

    4. 选中Project Explorer ->Debug 右击其下生成的可执行文件,-> debug as -> debug configuration, 选中debugger选项卡
    GDB debugger 中Main 选项卡中输入 gdb-multiarch

    在connection中输入目标机IP  和监听端口 ,点击debug进入debug 界面,可设置断点,查看变量,右上为变量和断点查看的地方
    可使用全速,单步执行

    初始界面

    运行到断点处

    以下是测试样例,现象与程序逻辑一致。 有图形界面辅助调试确实有有助调试,不过也不是没有缺点的,
    个人试用后发现单步执行速度似乎有些慢,不知道大家是怎样看待看待和处理这个问题的。
    #include <iostream>
    #include <stdio.h>
    using namespace std;
    #define FPATH "/sys/class/leds/beaglebone:green:usr3/brightness"
    #define BUFSIZE 50
    int main() {
        cout << "LED 3 starts flashing" << endl;
        FILE *LEDHandle = NULL;
        int i;
        int num;
       // char *LED1Brightness = "/sys/class/leds/beaglebone:green:usr3/brightness";
        for(i=0; i<10; i++)
        {
            if((LEDHandle=fopen(FPATH, "w+"))!=NULL)
            {
                num=fwrite("1", sizeof(char), 1, LEDHandle);
                fclose(LEDHandle);
                cout << num<< endl;
                sleep(1);
            }
            else
            {
            printf("open failed");
                }
            if((LEDHandle=fopen(FPATH, "w"))!=NULL)
            {
                fwrite("0", sizeof(char), 1, LEDHandle);
                fclose(LEDHandle);
                sleep(1);
               cout << "turn off" << endl;
            }
        }
       cout << "LED 3 ends flashing" << endl;
        return 0;
    }
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-18 23:58 , Processed in 0.116122 second(s), 18 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.