教您使用Visual Studio调试Linux Core Dump

Linux核心转储不再令人恐惧从Visual Studio 2019 v16.8预览版3开始,我们在WSL(Linux的Windows子系统)或远程Linux系统上添加了对Linux核心转储的调试支持。

该支持仅适用于“本地”用户。

调试非托管代码。

据我们所知,一些开发团队主要在Windows上开发系统,但是他们将同时在Windows和Linux(或仅在Linux)上进行部署,然后通过CI(连续集成)系统错误收集与Linux有关的信息。

这项新添加的功能可以使调试工作变得更轻松:您可以在熟悉的环境中调试Linux应用程序崩溃错误。

有了这些东西,妈妈不再需要担心遇到核心转储。

使用的方法非常简单,请在主菜单中选择:[Debug> OtherDebugTargets> DebugLinuxCoreDumpwithNativeOnly ...],请注意,只有在安装了[LinuxdevelopmentwithC ++]工作集后,此菜单项才可用。

如下图所示:在下一个对话框中,将显示调试会话的配置界面,如下图所示:您也可以在WSL或远程Linux上进行调试,但是需要在目标服务器上安装GDB。

系统。

下面我们简要介绍此对话框的各种属性。

在WSL上调试(在WSL上调试)如果选中此复选框,Visual Studio将尝试在默认WSL版本上查找Core Dump文件并启动调试会话。

此选项依赖于我们对WSL的本机支持,因此无需安装SSH。

调试远程Linux系统(远程调试机)如果未选中上述[在WSL上调试],Visual Studio将在此选项指定的远程系统上查找Core Dump文件,并启动调试会话。

已建立的SSH连接将在下拉列表中列出。

您可以在[工具& gt;选项& gt;跨平台连接管理器]。

核心转储文件(Core Dump File)此选项指定目标系统上存在的核心转储文件路径。

程序(Program)该选项指定生成Core Dump文件的可执行文件。

如果要在WSL上进行调试,并且Core Dump和可执行文件在Windows文件系统中,则可以将本地磁盘安装到/ mnt目录(例如:/ mnt / c / Users ...),在WSL中访问这些文件。

源这是一个选项,主要用于指定Windows上相应源文件所在的根目录。

如果要执行源代码级调试,此选项非常有用。

请按照=格式进行设置。

此外,可以使用分隔符来填充多个条目。

共享库搜索路径(共享库搜索路径)可选的调试符号搜索路径(将转换为与GDB对应的solib-search-path属性)。

您无需为Linux配置或基于MSBuild的Linux项目创建CMake项目即可使用此功能。

但是需要注意的是,如果您打开Linux项目,Visual Studio将自动在“程序”选项中填写相应的信息。

如果您有多个编译目标,Visual Studio将自动填写它可以找到的第一个目标。

总而言之,我一直不擅长使用GDB调试代码,也许我是由Visual Studio抚养长大的。

当您遇到Core dump时,通常只是直接directly代码(GDB不会[Tan Shou])。

今天有了这个东西,我觉得今生仍然值得期待。

生产环境中有什么问题?在Visual Studio源代码级别上直接调试:“这仍然是原始配方,仍然是相同的口味”。

最后,Microsoft Visual C ++团队的博客是我最喜欢的博客之一,其中包含有关Visual C ++的大量知识以及最新的开发进度。

如果您仍然对Visual C ++的古老技术感兴趣,则可以经常访问它们(或我)。

本文来自:“在Visual Studio中调试Linux核心转储”。

联系方式

KAMAYA(日本釜屋电机株式会社)成立于1957年10月15日,总部在日本的北海道,是一家国际知名的电子元件生产商,同其他日系企业一样,KAMAYA特别注重品质和客户的服务,在全世界范围内都设有工厂和分部。华科(华新科技股份有限公司)收购但独立运营。

查看详情

在线咨询