windows下,我们对于.net程序发生Crash,资源泄露,死锁等问题的分析,有神器windbg,那现在我们的.net core程序运行在linux上时,该怎么进行对对Core Dump文件进行分析呢?今天介绍一款Linux/mac os下的一款调试利器:lldb。

关于lldb的介绍,大家可以直奔官网传送门。话不多说,先说一下安装步骤。

一、先安装依赖:

yum -y install gcc gcc-c++ swig python-devel libedit-devel automake autoconf libtool make wget

  二、下载llvm源码(注意:.net core2.0.0只能使用lldb 3.6;.net core2.1以上必须是3.9.0,下同):  

wget http://releases.llvm.org/3.6.0/llvm-3.6.0.src.tar.xz
tar -xf llvm-3.6.0.src.tar.xz
mv llvm-3.6.0.src llvm

  三、进入llvm/tools目录并下载clang源码:

cd llvm/tools
wget http://releases.llvm.org/3.6.0/cfe-3.6.0.src.tar.xz
tar -xf cfe-3.6.0.src.tar.xz
mv cfe-3.6.0.src clang

  四、下载lldb源码:

wget http://releases.llvm.org/3.6.0/lldb-3.6.0.src.tar.xz
tar -xf lldb-3.6.0.src.tar.xz
mv lldb-3.6.0.src lldb

  五、下载compiler-rt的源码:

cd ../projects
wget http://releases.llvm.org/3.6.0/compiler-rt-3.6.0.src.tar.xz
tar -xf compiler-rt-3.6.0.src.tar.xz
mv compiler-rt-3.6.0.src compiler-rt

  六、下载libcxxabi的源码:

wget http://releases.llvm.org/3.6.0/libcxxabi-3.6.0.src.tar.xz
tar -xf libcxxabi-3.6.0.src.tar.xz
mv libcxxabi-3.6.0.src libcxxabi

  七、下载libcxx的源码:

wget http://releases.llvm.org/3.6.0/libcxx-3.6.0.src.tar.xz
tar -xf libcxx-3.6.0.src.tar.xz
mv libcxx-3.6.0.src libcxx

  八、回到llvm目录,配置编译选项:

cd ..
./configure --enable-optimized CC=gcc CXX=g++

  九、编译llvm:

make

  十、估计得个把小时,编译成功后,单独安装lldb即可:

cd  tools/lldb
make install

  检查是否成功:

lldb
version

  参考资料:《.NET Core 2.0应用程序高级调试》 Debugging CoreCLR

Linux下调试.Net core(1):lldb的安装的更多相关文章

  1. linux下如何产生core,调试core

    linux下如何产生core,调试core 摘自:http://blog.163.com/redhumor@126/blog/static/19554784201131791239753/ 在程序不寻 ...

  2. Linux 下如何产生core文件(core dump设置)

    转自:https://blog.csdn.net/star_xiong/article/details/43529637 今天在Linux下调试C程序时,出现段错误,习惯性的ls下当前目录,发现没有生 ...

  3. 红帽企业版Linux成为Linux下的.NET Core的参考平台

    微软和红帽声明将在红帽企业版Linux运行的.NET纳入官方支持.经两家公司透露,“红帽企业级Linux将成为Linux下的.NET Core主要参考操作系统”. 来自红帽资深开发者Harry Mow ...

  4. Nginx知多少系列之(五)Linux下托管.NET Core项目

    目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...

  5. Linux 下configure 参数配置与软件的安装与卸载

    Linux环境下的软件安装,并不是一件容易的事情:如果通过源代码编译后在安装,当然事情就更为复杂一些:现在安装各种软件的教程都非常普遍:但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而 ...

  6. Linux下Oracle11G RAC报错:在安装oracle软件时报file not found一例

    Linux下Oracle11G RAC报错:在安装oracle软件时报file notfound一例 1.现象 之前安装一切都比較顺利,安装oracle软件时,进度到30%时报错:file not f ...

  7. linux下如何查看mysql、apache是否安装,并卸载

    --linux下如何查看mysql.apache是否安装,并卸载? http://blog.163.com/dengxiuhua126@126/blog/static/1186077720137311 ...

  8. Scala入门(1)Linux下Scala(2.12.1)安装

    Scala入门(1)Linux下Scala(2.12.1)安装 一.文件准备 1.1 文件名称 scala-2.12.1.tgz 1.2 下载地址 http://www.scala-lang.org/ ...

  9. 详解Linux下swig 3.0.12的手动安装过程

    详解Linux下swig 3.0.12的手动安装过程 首先 从http://www.linuxfromscratch.org/blfs/view/cvs/general/swig.html上下载swi ...

随机推荐

  1. Oracle考试题作业

    新建一张学员信息表(student),要求:1. 字段如下:学号(sid),姓名(name),性别(sex),年龄(age),地址(address).2. 分别为字段添加约束:学号为主键,姓名为非空, ...

  2. VMware Workstation下ubuntu虚拟机无法上网连不上网络解决

    写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...

  3. Cesium 实践

    详细内容请参考教程:https://www.jianshu.com/p/31c3b55a21eb 该教程翻译自官方英文教程,对入门cesium 帮助很大. 2,Cesium项目实例    实践: 问题 ...

  4. POJ3461 Oulipo 字符串

    正解:kmp/哈希 解题报告: 传送门! 这题其实就kmp板子,,,用来复习下kmp的太久没打了QAQ 所以kmp做法就不港了放个代码就是了QAQ #include<algorithm> ...

  5. 【托业】toeic托业必背核心词汇_修正版

  6. GIL学习

    GIL锁 一.GIL的简单概述 二.GIL对于多线程的影响 三.解决GIL对于多线程影响的方案 回到顶部 一.GIL的简单概述 1.概念 GIL ( Global Interperter Lock ) ...

  7. Cartographer源码阅读(9):图优化的前端——闭环检测

    约束计算 闭环检测的策略:搜索闭环,通过匹配检测是否是闭环,采用了分支定界法. 前已经述及PoseGraph的内容,此处继续.位姿图类定义了pose_graph::ConstraintBuilder ...

  8. Ceph与Gluster之开源存储的对比

    一.Ceph与Gluster之开源存储的对比 一.Ceph与Gluster的原理对比 Ceph和Gluster是Red Hat旗下的成熟的开源存储产品,Ceph与Gluster在原理上有着本质上的不同 ...

  9. IdentityServer4授权和认证对接数据库

    接着上一篇讲:https://www.cnblogs.com/nsky/p/10352678.html 我们之前都是用in-men的方式把数据添加到内存了,目的是为了测试方便, 现在我们把所有配置都添 ...

  10. LCA Tarjan方法

    LCA Tarjan方法 不得不说,高中生好厉害,OI大佬,感觉上个大学好憋屈啊! 说多了都是眼泪 链接拿去:http://www.cnblogs.com/JVxie/p/4854719.html