在【EOS源码编译运行】一文已经详细描述了EOS源码编译。但是阅读代码,光跑代码是不够的,必须要可以调试。一搜发现网上没有相关的文章,只好自己探索折腾。不过很快发现其实EOS已经为我们做好了的,只需带相关参数即可,只是官网没有介绍,自然网上也没有相关的文章。

编译带调试信息的EOS

编译可以调试(带源码信息)的EOS程序,增加-o Debug参数即可,即

$./eosio_build.sh -o Debug

下载源码等其他步骤请参考【EOS源码编译运行】一文

下载VSCode

和比特币,以太坊源码调试一样,vscode是最佳的调试EOS源码的调试工具

https://code.visualstudio.com/Download

调试配置流程

导入源码

配置调试文件

执行后,会生成launch.json, 然后修改program字段值为对应的程序即可,比如要调试nodeos, 则修改为如下

添加断点并开始调试

在行号左边点击即可添加断点

点击调试界面的右三角开始调试程序

注意

如果你曾经执行过release版本的nodeos,需要将数据清空,否则会报错

database created by a different compiler, build, boost version, or operating system

执行如下命令清空老数据

$ rm -rf ~/Library/Application\ Support/eosio

如果你对EOS,ETH技术及开发感兴趣,请入QQ群讨论: 829789117


如需实时查看最新文章,请关注公众号"区块链斜杠青年",一起探索区块链未来

[EOS源码分析]4.EOS源码调试相关推荐

  1. spring源码分析第一天------源码分析知识储备

    spring源码分析第一天------源码分析知识储备 Spring源码分析怎么学? 1.环境准备: 2.思路    看:是什么? 能干啥    想:为什么?     实践:怎么做?         ...

  2. k8s client-go源码分析 informer源码分析(3)-Reflector源码分析

    k8s client-go源码分析 informer源码分析(3)-Reflector源码分析 1.Reflector概述 Reflector从kube-apiserver中list&watc ...

  3. Java集合类框架源码分析 之 LinkedList源码解析 【4】

    上一篇介绍了ArrayList的源码分析[点击看文章],既然ArrayList都已经做了介绍,那么作为他同胞兄弟的LinkedList,当然必须也配拥有姓名! Talk is cheap,show m ...

  4. [EOS源码分析]1.EOS源码编译运行

    本文所有实践都是基于EOS dawn-v4.1.0,请切到该分支然后实践 切换命令:git checkout dawn-v4.1.0 目前网络上都是针对老版EOS2.0源码编译的文章,我在mac上参考 ...

  5. android view 源码分析,Android ViewPager源码详细分析

    1.问题 由于Android Framework源码很庞大,所以读源码必须带着问题来读!没有问题,创造问题再来读!否则很容易迷失在无数的方法与属性之中,最后无功而返. 那么,关于ViewPager有什 ...

  6. 【Android 插件化】VirtualApp 源码分析 ( 启动应用源码分析 | HomePresenterImpl 启动应用方法 | VirtualCore 启动插件应用最终方法 )

    文章目录 一.启动应用源码分析 1.HomeActivity 启动应用点击方法 2.HomePresenterImpl 启动应用方法 3.VirtualCore 启动插件应用最终方法 一.启动应用源码 ...

  7. 【Android 插件化】VirtualApp 源码分析 ( 添加应用源码分析 | LaunchpadAdapter 适配器 | 适配器添加元素 | PackageAppData 元素 )

    文章目录 一.添加应用源码分析 1.LaunchpadAdapter 适配器 2.适配器添加元素 3.PackageAppData 元素 一.添加应用源码分析 1.LaunchpadAdapter 适 ...

  8. 【Android 插件化】VirtualApp 源码分析 ( 安装应用源码分析 | HomePresenterImpl 添加应用 | AppRepository.addVirtualApp )

    文章目录 一.安装应用源码分析 1.HomePresenterImpl 添加应用 2.AppRepository.addVirtualApp 安装 SD 卡 APK 应用 一.安装应用源码分析 1.H ...

  9. 【Android 电量优化】JobScheduler 相关源码分析 ( ConnectivityController 底层源码分析 | 构造函数 | 追踪任务更新 | 注册接收者监听连接变化 )

    文章目录 一.ConnectivityController 连接控制器引入 二.ConnectivityController 构造方法解析 ( 注册接收者 ) 三.mConnectivityRecei ...

最新文章

  1. NVIDIA深度学习Tensor Core性能解析(上)
  2. android 富文本框架_五种JavaScript富文本编辑器,总有一款适合你
  3. 『设计模式』适配器模式(Adapter)
  4. 华为mate50鸿蒙,华为Mate50Pro首次曝光,5000mAh+鸿蒙OS+120Hz,太强
  5. Permissions for id_rsa are too open
  6. ubuntu安装c/c++编译环境
  7. MTK 驱动开发(32)---Sensor 移植及调试2
  8. 初学关键段容易忽略的问题
  9. 3月19日学习内容整理:redis
  10. 连接 RIP 与 OSPF 网络
  11. STM32F103 mbed输出互补pwm
  12. 大数据学习入门级书籍推荐
  13. 面试官:TCP和UDP两者的区别是什么?
  14. linux测试wifi信噪比,无线网络中信噪比(SNR)计算
  15. nps内网穿透p2p隧道实战
  16. 1962年 电影版 越剧红楼梦 剧本
  17. 基于STM32的卧室智慧监测系统
  18. 计算机画图照片大小,电脑自带的画图工具怎么调整图片的大小?
  19. myeclipse自定义背景颜色
  20. Java第二次作业|实验3 运算符、表达式和语句

热门文章

  1. 算法大神左程云耗尽5年心血分享程序员代码面试指南第2版文档
  2. 中国信息化系统集成行业协会:中国计算机系统集成行业产业发展前景及趋势预测
  3. python操作word的入门教程_Python操作Word的入门教程
  4. Processing 入门教程(三十七)图层动画
  5. NVIDIA Jetson AGX Xavier安装realsense2
  6. 十天学习Unity3D脚本(一)九个回调
  7. C++实现简单的通讯录系统
  8. elastic-job没有自动创建表JOB_EXECUTION_LOG,JOB_STATUS_TRACE_LOG
  9. 毕业论文格式、画图(仅限matlab)攻略
  10. OpenRasp Java运行时修改字节码技术