用vs编写和调试linux C++程序

时间:2022-03-11 00:30:35

在Windows下用Visual Studio 2017 编写Linux C++ 程序

1. 安装VS2017
下载Visual Studio Community ,它对于小型团队是免费的并且是开源的;
安装时勾选Linux development with C++;
用vs编写和调试linux C++程序

2. 配置目标Linux

如果操作系统是Win10,那么可以安装WSL.
(Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,目标是使纯正的Ubuntu 14.04 “Trusty Tahr”映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。– 百度百科)

目标Linux机器上需要安装gdbserver ,openssh-server,build-essential

(1)gdbserver用于远程调试;
(2)SSH协议族可以进行远程控制,openssh是其开源实现;
(3)build-essential软件包作用:提供编译程序必须软件包的列表信息,编译程序有了这个软件包,它才知道 头文件和使用的库函数在哪里。

目标Linux可以是上面提到的WSL,也可以远程服务器,比如阿里云服务器。

安装所需:

$ sudo apt update
$ sudo apt install -y build-essential
$ sudo apt install -y gdbserver
$ sudo apt install -y openssh-server

安装好之后打开/etc/ssh/sshd_config

sudo nano /etc/ssh/sshd_config

将PasswordAuthentication之后改为yes,开启密码验证。

然后生成ssh keys 并且开启服务

$ sudo ssh-keygen -A
$ sudo service ssh start

3.配置

  1. 新建项目
    用vs编写和调试linux C++程序
  2. 确定你的目标Linux
    用vs编写和调试linux C++程序

  3. 配置目标Linux
    打开工具-选项-跨平台-连接管理器,点击添加
    用vs编写和调试linux C++程序

**如果是远程服务器,那么主机名输入ip地址,我这里用的是ubuntu云服务器,用户名为ubuntu;
如果是本地WSL,主机名是localhost。**
然后输入你的密码。

在项目属性中确定远程计算机:
用vs编写和调试linux C++程序

4 运行调试代码
用vs编写和调试linux C++程序
这里其实是远程服务器上编译生成。

没有报错,现在看我的远程服务器上多了个projects目录
用vs编写和调试linux C++程序

但是没有生成可执行文件,有点奇怪。我只能自己g++。

我的Linux特有的头文件是不全的,自己下载了一个Linux下的include,
放在了G:\VS2017\Common7\IDE\VC\Linux\include\usr\include

注意:在#include <> 提示输入时,Windows下是\,我们需要改成/,这样虽然vs提示报错,但是可以成功编译,因为是在远程Linux服务器上编程生成。

这样就可以在vs中编写和调试Linux C++程序了:)

参考:http://t.cn/RX2bxm2