最近一直在看ovs的源码。当我看到用户模式代码时,我需要调试用户模式代码。一开始想在linux下直接用gdb调试,但是ovs工程太复杂了。从网上找了一些文章,发现vs2017可以支持linuxc++程序的调试。折腾了一下午,遇到了一些坑,终于搭建了开发环境。vs2017最新版本支持在linux环境下编程。与传统的windows在vs上编程不同,vs2017需要的linux环境需要安装在linux服务器上。vs2017相当于在windows系统和linux系统之间建立了连接。通过一定的映射,可以将代码复制到linux中对应的目录下,windows系统中的vs2017可以看到运行情况,甚至可以断点调试代码。开发环境window10操作系统,vs2017社区版,VMware12.5.7在VMware官网安装ubuntu14桌面版vs2017安装下载地址https://visualstudio.microsof...官网下载最新的vs2017,安装过程中需要注意。如果需要搭建linuxc++环境,需要查看“linuxdevelopmentusingc++”工具集。看下图配置ubuntu环境,在ubuntu安装c++环境,因为vs2017需要通过ssh登录ubuntu系统。所以还需要安装ssh服务,命令如下:sudoapt-getinstallopenssh-serverg++gdbgdbserver启动ssh服务:sudoservicesshstartvs2017创建一个linux工程并打开vs2017,步骤如下,file-->newproject-->cross-platform-->linux->consoleapplication(linux)新建工程完成后,vs2017自动生成一个简单的maic.cpp文件菜单栏,选择Debug->crossplatform->添加,输入刚才创建的Ubuntu服务器用户信息右击Solution,可以看到当前程序的属性页,点击ConfigurationProperties->General->RemoteBuildComputer,选择刚刚创建的账户,在这个下可以看到页面,默认的远程构建根目录在“~/projects”下面,后面可以看到项目的代码会生成在ubuntu的对应目录下。在菜单栏选择Debug->LinuxConsole,打开linux程序的控制台,可以在程序中打断点,点击debug按钮运行,可以看到控制台打印出信息,登录ubuntu,可以看到~/projects目录下新建了项目文件夹“test”遇到了问题。以上是一个简单的开发演示。在实际工作中,代码可能很复杂。因为这几天在学习linux的IO多路复用机制,所以从网上找了一个稍微复杂一点的通信程序。代码来自博客https://www.cnblogs.com/Anker...,源码有错误,需要添加#include
