Linux下调试.Net core(1):lldb的安装
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的安装的更多相关文章
- linux下如何产生core,调试core
linux下如何产生core,调试core 摘自:http://blog.163.com/redhumor@126/blog/static/19554784201131791239753/ 在程序不寻 ...
- Linux 下如何产生core文件(core dump设置)
转自:https://blog.csdn.net/star_xiong/article/details/43529637 今天在Linux下调试C程序时,出现段错误,习惯性的ls下当前目录,发现没有生 ...
- 红帽企业版Linux成为Linux下的.NET Core的参考平台
微软和红帽声明将在红帽企业版Linux运行的.NET纳入官方支持.经两家公司透露,“红帽企业级Linux将成为Linux下的.NET Core主要参考操作系统”. 来自红帽资深开发者Harry Mow ...
- Nginx知多少系列之(五)Linux下托管.NET Core项目
目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...
- Linux 下configure 参数配置与软件的安装与卸载
Linux环境下的软件安装,并不是一件容易的事情:如果通过源代码编译后在安装,当然事情就更为复杂一些:现在安装各种软件的教程都非常普遍:但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而 ...
- Linux下Oracle11G RAC报错:在安装oracle软件时报file not found一例
Linux下Oracle11G RAC报错:在安装oracle软件时报file notfound一例 1.现象 之前安装一切都比較顺利,安装oracle软件时,进度到30%时报错:file not f ...
- linux下如何查看mysql、apache是否安装,并卸载
--linux下如何查看mysql.apache是否安装,并卸载? http://blog.163.com/dengxiuhua126@126/blog/static/1186077720137311 ...
- 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/ ...
- 详解Linux下swig 3.0.12的手动安装过程
详解Linux下swig 3.0.12的手动安装过程 首先 从http://www.linuxfromscratch.org/blfs/view/cvs/general/swig.html上下载swi ...
随机推荐
- 解决ssh出现"Write failed: Broken pipe"问题
用 ssh 命令连接服务器之后,如果一段时间不操作,再次进入 Terminal 时会有一段时间没有响应,然后就出现错误提示: Write failed: Broken pipe 只能重新用 ssh 命 ...
- eclipse哪个版本好
Eclipse IDE for Java EE Developers (企业级开发软件,干啥都足够了,300MB左右)
- 【C++ mid-term exerises】
1. 用掷骰子方式,模拟班级每个学号被随机抽点的概率. (12分) 具体要求如下: (1)设计并实现一个骰子类Dice. ① 数据成员sides表示骰子面数.构造时,指定骰子是6面,8面,还是其它数值 ...
- linux--- python3环境部署篇
环境部署 我们在pycharm上都是自己设置的python3解释器的环境变量,使得代码能够正常执行!可是怎么能让我们的python代码在LINUX上跑起来呢? linux是内置python,可是内置的 ...
- Echarts . 在柱状图中添加自定义值 (键值对)
x ["需求"] {"0":"使用Echarts根据数据加载一个饼状图"} {"1":"点击哪个饼状图,弹出此 ...
- 20165311 ch02 课下作业
补充完成课上测试(不能只有截图,要有分析,问题解决过程,新学到的知识点) 完成教材 p97 2.96 2.97,要有完备的
- MySQL慢查询语句的定位
使用以下语句可以查询相关的配置和日志所在位置: show variables like '%slow%'; 名词解释: log_slow_admin_statements: 打开后可以将一些比较慢的管 ...
- python摸爬滚打之day17----类与类之间的关系
1.类与类之间的联系 1.1 依赖关系 类A中使用了类B, 类B作为参数传进类A的方法中被使用. 这种关系中类与类之间的联系是最轻的. class Elephant: def open(self,e ...
- Python requests库如何下载一个图片资源
原文地址https://blog.csdn.net/u011541946/article/details/77700074 前面一篇文章介绍了response对象的一些常用API,也已经提到,我们的重 ...
- linux查看cpu个数,线程数及cpu型号
1.查看CPU逻辑id grep 'physical id' /proc/cpuinfo | sort -u physical id : 0physical id : 1 2.查看物理CPU个数 $ ...