今天同事要进行 lldb进行调试dotnet的bug

本来在x86 上面进行相应的处理 但是发现报错. 没办法 正好有一台借来的arm服务器就搞了一下.

简单记录一下安装方法

1. 安装 apt的source.list

增加一行  银河麒麟的 官方源

deb http://archive.kylinos.cn/kylin/KYLIN-ALL 4.0.2sp2-server-ft2000 main restricted universe multiverse

2. 安装lldb 之前百度了下 发现  apt-get install lldb 是找不到的 必须要带版本号

安装命令为

apt-get install lldb-3.9

大概有 200M的安装文件.

注意一下版本号的问题

dotnet :2.1.1。查看官方文档2.0.0只能使用lldb 3.6;2.1以上必须是3.9.0;所以特别要注意版本问题,一个是createdump 2.0的有bug会失败。二个是dotnet版本和lldb版本要匹配
被调试分析的应用也是用2.1跑起来的。

安装完之后可以简单使用了 注意一点的是 使用命令为

lldb-3.9

注意 如果调试 dotnet 的时候 需要安装 dotnet-sos 的部分

安装命令为
1. 安装dotnet tools dotnet tool install -g dotnet-sos 2. 安装 sos 相关内容
这个命令默认将dotnet-sos 放到了 用户的家目录下面 比如我的是root用户就放到了
/root/.dotnet/tools 目录下面 cd 到这个目录 并且执行命令
./dotnet-sos install 注意 我这边可能环境变量少一个内容 所以一开始报错了 如: root@inspur:~/.dotnet/tools# ./dotnet-sos install
A fatal error occurred, the required library libhostfxr.so could not be found.
If this is a self-contained application, that library should exist in [/root/.dotnet/tools/.store/dotnet-sos/3.1.137102/dotnet-sos/3.1.137102/tools/netcoreapp2.1/any/].
If this is a framework-dependent application, install the runtime in the default location [/usr/share/dotnet] or use the DOTNET_ROOT environment variable to specify the runtime location. 需要执行一个命令
export DOTNET_ROOT=/dotnet 然后在安装就可以了:
root@inspur:~/.dotnet/tools# ./dotnet-sos install
Installing SOS to /root/.dotnet/sos from /root/.dotnet/tools/.store/dotnet-sos/3.1.137102/dotnet-sos/3.1.137102/tools/netcoreapp2.1/any/linux-arm64
Creating installation directory...
Copying files...
Creating new /root/.lldbinit file - LLDB will load SOS automatically at startup
SOS install succeeded

3. 好像直接 lldb yourdumpfile 就可以 打开了

但是 问题出现了 会报错..

root@inspur:~# lldb-3.9 dotnet_time_2020-08-04_16\:52\:18.24453
(lldb) target create "dotnet_time_2020-08-04_16:52:18.24453"
Current executable set to 'dotnet_time_2020-08-04_16:52:18.24453' (aarch64).
(lldb) plugin load /dotnet/shared/Microsoft.NETCore.App/2.1.3/libsos.so
error: plug-in is missing the required initialization: lldb::PluginInitialize(lldb::SBDebugger)

这一块需要专家给处理一下了 我搞不定了.

这个错误需要专家指导..

不过如果安装了 dotnet-sos 那么可以使用 soshelp 的命令

如下:

银河麒麟安装LLDB的方法以及调试 dump 文件 (未完成)的更多相关文章

  1. 国产化之银河麒麟安装.NetCore-包管理器方式

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用达梦V8,CPU平台的范围包括x64.龙芯.飞腾.鲲鹏等. 考虑到这些基础产品对.NETCore的支持,最终选择了3.1版 ...

  2. 自定义VS程序异常处理及调试Dump文件(一)

    自定义VS程序异常处理及调试Dump文件(一) 1. Dump文件 1. Dump文件介绍 Dump文件(Dump File),也叫转储文件,以.DMP为文件后缀.dump文件是进程在内存中的镜像文件 ...

  3. 使用VS2012调试Dump文件

    前一节我讲了怎么设置C++崩溃时生成Dump文件 , 点击 传送门 , 这一节我讲讲怎么使用 VS2012 调试生成的 Dump 文件 , 甚至可以精确到出错的那一行代码上面 ; 1. 生成 Dump ...

  4. (转)解决WinDbg调试Dump文件不同环境mscordacwks.dll版本问题

    解决WinDbg调试Dump文件不同环境mscordacwks.dll版本问题   开发人员提交一个dump文件(Windows Server 2008 R2),当前调试环境Windows Serve ...

  5. 国产银河麒麟 安装wps 的简单方法

    前提说明 银河麒麟 是总部在天津的企业 有国防科大还有 ubuntu的母公司一起在维护 主要的产品有 优麒麟 还有 银河麒麟 优麒麟 可以看做是 国产版的ubuntu的社区版 银河麒麟 则是 面向国内 ...

  6. 国产化之银河麒麟安装达梦数据库DM8

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用DM8. 虽然在之前的文章中已经成功模拟国产飞腾处理器,但是运行效率不高,所以这里的银河麒麟操作系统还是运行在x64平台上 ...

  7. 银河麒麟安装node,mysql,forever环境

    这就是国产银河系统的界面,测试版本是麒麟V10 链接: https://pan.baidu.com/s/1_-ICBkgSZPKvmcdy1nVxVg 提取码: xhep 一.传输文件 cd /hom ...

  8. 使用VS调试DUMP文件

    使用前准备: 1.保存编译文件的PDB文件(要和生成exe文件的对应) 2.在开发机器上,使用vs直接双击打开dmp文件,注意 进程名称 ,这个是程序运行crash的时候所在的目录位置,这个很重要. ...

  9. 调试dump文件

    1.设置好pdb文件和源代码路径 为了能正确分析Dump文件,我们必须要指定和程序一起出来的PDB文件,如果程序重新被编译了一次,即使代码没有任何变化,之前的PDB文件我们不能再继续使用.

  10. dotnet core调试docker下生成的dump文件

    最近公司预生产环境.net core应用的docker容器经常出现内存暴涨现象,有时会突然吃掉几个G,触发监控预警,造成容器重启. 分析了各种可能原因,修复了可能发生的内存泄露,经测试本地正常,但是发 ...

随机推荐

  1. 【DevCloud · 敏捷智库】暴走在发布前夜的开发,你怕不怕?

    摘要:每个月都有2天开发团队要通宵熬夜,大家苦不堪言.有个别的开发同学,骂完公司骂同事,骂完同事骂客户的,甚至连自己都不放过-- 来自一个CEO的叙述 在一次企业交流会上,一个公司的CEO提道,&qu ...

  2. 手把手带你做LiteOS的树莓派移植

    摘要:树莓派是英国的慈善组织"Raspberry Pi 基金会"开发的一款基于arm的微型电脑主板.本文介绍基于LiteOS的树莓派移植过程. 本文分享自华为云社区<2021 ...

  3. 一文带你从零认识什么是XLA

    摘要:简要介绍XLA的工作原理以及它在 Pytorch下的使用. 本文分享自华为云社区<XLA优化原理简介>,作者: 拓荒者01. 初识XLA XLA的全称是Accelerated Lin ...

  4. 火山引擎DataLeap的Catalog系统搜索实践 (二):整体架构

    整体架构 火山引擎DataLeap的Catalog搜索系统使用了开源的搜索引擎Elasticsearch进行基础的文档检索(Recall阶段),因此各种资产元数据会被存放到Elasticsearch中 ...

  5. 带你全方面了解字节 A/B 实验的文化与工具

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 A/B 测试是在相同的环境下,通过随机的抽样把对照组和控制组进行区分,并分别实行新旧两种策略,结合一定的统计方法来 ...

  6. umount.nfs4: /home/videorec/sharedir: device is busy

    用umount取消挂载时报错设备繁忙:device is busy.原因是还有进程在打开目录下的文件,可以先杀死进程,再卸载,或者强制卸载 umount 使用umount强制卸载,参数如下: -l  ...

  7. 拥抱智能,AI 视频编码技术的新探索

    随着视频与交互在日常生活中的作用日益突显,愈发多样的视频场景与不断提高的视觉追求对视频编码提出更高的挑战.相较于人们手工设计的多种视频编码技术,AI 编码可以从大数据中自我学习到更广泛的信号内在编码规 ...

  8. HDU 4027 Can you answer these queries?(线段树 区间不等更新)

    https://vjudge.net/problem/HDU-4027#author=SUDA2019 题意 输入n个数 然后有两种操作 输入0时将给定区间所有数都变为自己的开方 输入1输出给定区间所 ...

  9. vue中class样式与内联样式

    (1):style使用 <div class="score" :style="{ color: colorComputed(item.status) }" ...

  10. C#利用控件实现柱形图分析

    数据 { using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=;database=db_TomeOne&quo ...