visualstudio如何新建html,visualstudio在源代码管理中打开

  

  三次更新通过使用Visual Studio 2019,可以在远程Linux系统或WSL(Windows Subsystem for Linux)上编译调试C项目。此外,可以使用Visual Studio开发基于MSBuild和CMake的项目。   

  

  CMake是一个很好的工具。对于同一组代码,您可以使用CMake为不同的平台编写构建脚本。因此,我们推荐它作为跨平台开发的首选编译工具,开源世界的许多开发人员一直在使用它。   

  

  在今天的文章中,我们将重点介绍Visual Studio对Linux开发平台的最新更新点。它们是:   

  

   对于Linux版Ninja的支持.Ninja是一个注重速度的编译系统。一直以来,Ninja都是默认的构建引擎(底层构建系统),配置为Windows CMake的目标平台。从Visual Studio 2019 v16.6预览版3开始,我们增加了Ninja对Linux的支持。具体来说,Ninja在速度上优于传统的Unix Makefiles,因此我们将其作为Linux目标平台(或WSL)的首选CMake配置生成器。   

  

   对gdbserver的顶格支持。GDB服务器是一个服务器程序,可以调试运行在远程Linux系统上的程序。它特别适合嵌入式调试场景,因为目标系统可能没有足够的资源来运行gdb。在Visual Studio 2019 v16.7预览版1中,我们增加了新的调试器配置,支持远程系统的CMake项目的调试。这样,您就不再需要手动修改launch.vs.json配置文件了。手动修改配置文件总是很麻烦。   

  

   针对连接管理器的优化。Visual Studio中的连接管理器可用于管理和存储SSH远程连接信息。针对我们收到的大量反馈,我们决定在Visual Studio 2019 v16.7预览版2中增加远程连接的修改和设置默认连接的功能支持。通过该函数,可以方便地修改已有的远程连接(比如远程设备的IP发生了变化,可以直接修改)并设置默认的远程连接,该连接将在CMake项目的CMakeSettings.json和launch.vs.json文件中的变量${defaultRemoteMachineName}中使用。   

  

  使用Ninja加速Linux工程编译Ninja现在已经成为CMake配置的默认构建引擎。在基于Debian的Linux系统上,您可以按照以下说明安装Ninja:   

  

     

  

  我们选择了两个开源项目bullet3和LLVM来测试Ninja和Unix Makefiles的编译性能。下表显示了在Visual Studio和本地虚拟机(Ubuntu)上重新编译的时间比较。   

  

     

  

  在Visual Studio 2019 v16.6预览版3及更高版本中,可以直接在Visual Studio上编译Linux项目。在CMake和Ninja的帮助下,您将看到编译性能的显著提高,从而减少编译时间(更多的咖啡时间)。   

  

  Top Grid对gdbserver的支持在Visual Studio 2019 v16.6预览版2中,我们引入了新的调试模板来简化gdb远程调试。在v16.7预览版1中,我们对该模板做了一些扩展,实现了对gdbserver调试的顶层支持。   

  

  CMake项目的调试会话信息是在launch.vs.json文件中配置的。关于如何添加新配置的方法,您仍然需要参考帮助文档。下图是一个简单的例子。在这个例子中,我们使用配置类型“cppgdb”来调试远程Linux或WSL。   

  

     

  

  Visual Studio使用基于gdb或gdbserver的调试前端来调试远程系统或WSL。在上面的配置文件中,可以设置为gdb或者gdbserver来选择不同的调试引擎。   

  

  DebuggerConfiguration:指定默认情况下使用的调试引擎。在Visual Studio 2019 v16.6中,只有gdb可用。在Visual Studio 2019 v16.7及更高版本中,我们增加了对gdbserver的支持。   

/p>   

另外,在这个配置文件中,还有gdbserver有关的其他配置项,它们是

  

gdbPath: 默认值是<${debugInfo.vsInstalledGdb}>。它是gdb的完整Windows路径。在默认情况下,它指向Linux C/C++ 开发工具集的gdb安装位置。

  

gdbserverPath: 默认指向usr/bin/gdbserver。它是gdbserver的Unix完整路径。

  

我们对gdbserver的顶格支持将会在远程系统上启动gdbserver进程,将gdbserver的标准输出放入管道,然后将标准错误输出重定向到Visual Studio的输出窗口,在任何错误发生或者调试结束的时候,我们将会结束gdbserver进程。关于完整的配置选项的说明请查看更新文档。

  

我们推荐使用gdb作为常规远程调试的首选工具。Gdbserver一般是用在目标系统资源不足以运行gdb的时候(例如,嵌入式开发场景)。在这种场景下,借助于编译和部署分离的机制,我们可以构建一个更为强大的Linux系统(或者本机WSL),并使用gdbserver对低配置设备进行调试。

  

连接管理器更新最后,我们在Visual Studio 2019 v16.7 Preview 2中对连接管理器进行了更新。具体来说,我们现在可以编辑和设置默认远程连接。在Visual Studio中,连接管理器主要用来管理和存储到远程系统的SSH安全连接。如下图所示:

  

  

当目标设备的IP地址发生变化的是,你可以在连接管理器中直接修改现有连接,而不需要删除原有连接然后新增连接。这样做的好处是,Visual Studio将不再需要重复拷贝远程系统上的包含目录,从而提供了一个自动化拷贝的本机IntelliSense体验。

  

另外,你也可以设置默认连接,它将被CMakeSettings.json和launch.vs.json文件中的<${defaultRemoteMachineName}>所引用到。这可以在不包含任何机器相关配置信息的情况下将这些文件签入到源码控制系统。

  

总结目前Visual Studio已经进化到了v16.7 Preview 2,随着对Linux开发者越来越完善的支持,相信不久的将来,Visual Studio会成为Linux开发者工具箱中的一件必备利器。

  


  

相关文章