关于VS2015支持编译Linux程序的问题
现状
目前已经发布的VS2015中包括VS2015 Preview 以及 VS2015 CTP6,这两个版本均不支持直接编译C++代码为Linux程序,具体情况可以参考 Visual Studio 2015 CTP 6 和 Visual Studio 2015 Preview。
正式版发布时间
在微软官网没有找到明确的发布时间,只是说在今年晚些时间发布。另外Windows10正式版的发布时间为夏末秋初,推测到时候VS2015正式版也会一起推出,参考文章夏末秋初!Windows 10正式版发布时间确认。
可能的问题
从目前各种资料来看,VS2015正式版发布后,有可能会支持Linux程序的开发和编译,但更大的可能性是通过C#开发,来达到跨平台的可能,目前微软已经开源了DotNet CoreCLR,计划支持Windows、Linux、IOS三个平台。
从Opening up Visual Studio and .NET to Every Developer, Any Application: .NET Server Core open source and cross platform, Visual Studio Community 2013 and preview of Visual Studio 2015 and .NET 2015 这篇文章看,目前VS2015预览版已经通过Clang和Llvm支持了C++开发Android程序,即将会支持IOS程序。由此可以推断,VS2015也可能会支持C++开发Linux程序,并且是通过Clang编译器进行编译。 这种情况下,VS会提供编辑和编译的功能,应该不会具有调试Linux程序的功能,即使可以调试,也必须配置虚拟机才行。同样还有可能有下面的限制,用C++开发,还必须使用标准语法,不能直接调用Windows API、Windows特有的库,必须使用跨平台的库才行,MFC程序可能还是无法跨平台,开发界面程序需要Qt或者C#等。
其他方案
即使VS2015正式版发布后,不支持C++直接编译生成Linux程序,那么还是有其他的可选方案,比如:VisualGDB。VisualGDB是VS的一个插件,安装了此插件后,就可以使用VS进行编辑、编译、调试Linux程序,当然,必须准备一个Linux系统的虚拟机。它的原理是使用VS编译代码,使用SSH+GCC进行远程编译,使用SSH + gdbserver + gdb进行远程调试。而且,使用VisualGDB后,只需要懂简单的make或者CMake语法,就可以进行完整的开发调试,智能提示、调试程序与VS开发Windows程序基本上没有区别。
VisualGDB不止支持Linux系统,还支持Solaris等Unix系统、Mac、嵌入式、Cygwin等操作系统,基本上,只要支持SSH、gcc、gdbserver的系统,都可以使用VS + VisualGDB的方式进行开发。 比如:
其他参考资料
Visual Studio Upcoming Features Timeline
微软公布VS 2015产品线,可直接生成Linux二进制程序
关于VS2015支持编译Linux程序的问题的更多相关文章
- delphi怎样编译LINUX程序
delphi编译LINUX程序 DELPHI XE 10.2(TOKYO)开始可以开发LINUX控制台程序. 1)上传PASERVER到LINUX,并且运行PASERVER. 2)开始编译,PROFI ...
- Windows10 VS2017 C++编译Linux程序
#include <cstdio> #include <iostream> #include "unistd.h" using namespace std; ...
- 在虚拟机上利用宿主机共享目录编译linux程序
#前提条件: 宿主机:windows7 虚拟机:REDHAT 开发环境 qt4.7.4 +vs2010 . 代码在windows7 上编译成功 ,运行正常 在linux下编译需要的第三方库已经编译成功 ...
- vs2015上编译QT程序的环境搭建
下载相对应版本的QT(以QT5.7.0为例),进入网站http://download.qt.io/archive/qt/5.7/5.7.0/,下载MSVC版本QT,我的系统是64位,VS版本是2015 ...
- vs2017 编译linux项目
官方文档1: https://blogs.msdn.microsoft.com/vcblog/2017/04/11/linux-development-with-c-in-visual-studio/ ...
- 使用VS+VisualGDB编译调试Linux程序
Linux程序开发变得越来越多,越来越多的程序.产品需要跨平台,甚至有些开源项目只支持Linux平台,所以掌握Linux开发变得越来越重要. 但是对于习惯了Windows下的开发,使用了VS这个宇宙第 ...
- Linux下通过源码编译安装程序(configure/make/make install的作用,然后在/etc/profile文件里修改PATH环境变量)
一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在 ...
- 35、在编译Linux内核中增加程序需要完成以下3项工作
在编译Linux内核中增加程序需要完成以下3项工作: 将编写的源代码拷入Linux内核源代码的相应目录. 在目录的Kconfig文件中增加关于新源代码对应项目的编译配置选项 在目录的Makefile文 ...
- Linux下通过源码编译安装程序
本文简单的记录了下,在linux下如何通过源码安装程序,以及相关的知识.(大神勿喷^_^) 一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件: ...
随机推荐
- CLR 这些年有啥变化吗?
引言 首先想给初学者推荐下<CLR via C#>这本好书,做.Net开发的开发者应该都读一下.为避免广告之嫌,所以这里只提供豆瓣书评的链接. CLR 作为.Net 程序跨平台运行的载体, ...
- HTML5 介绍
本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...
- Oracle Database 12c Data Redaction介绍
什么是Data Redaction Data Redaction是Oracle Database 12c的高级安全选项之中的一个新功能,Oracle中国在介绍这个功能的时候,翻译为“数据编纂”,在EM ...
- 玩转Vim 编辑器
一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...
- win7下利用ftp实现华为路由器的上传和下载
win7下利用ftp实现华为路由器的上传和下载 1. Win7下ftp的安装和配置 (1)开始->控制面板->程序->程序和功能->打开或关闭Windows功能 (2)在Wi ...
- OpenDigg前端开源项目周报1219
由OpenDigg 出品的前端开源项目周报第二期来啦.我们的前端开源周报集合了OpenDigg一周来新收录的优质的前端开发方面的开源项目,方便前端开发人员便捷的找到自己需要的项目工具等.react-f ...
- mysql查询性能优化
mysql查询过程: 客户端发送查询请求. 服务器检查查询缓存,如果命中缓存,则返回结果,否则,继续执行. 服务器进行sql解析,预处理,再由优化器生成执行计划. Mysql调用存储引擎API执行优化 ...
- SQL SERVER导入数据到ORACLE的方法总结
我们偶尔会有将数据从SQL SERVER导入到ORACLE当中的这种需求,那么这种跨数据库导数有那些方法呢?这些方法又有那些利弊呢? 下面比较肤浅的总结了一些可行的方法. 1:生成SQL脚本然后去OR ...
- AutoMapper使用中的问题
指定值只会执行一次 public class MomanBaseProfile : Profile { public MomanBaseProfile() { CreateMap<Request ...
- bootstrap
访问Bootstrap中文网,下载bootstrap中文文档,选择用于生产环境的bootstrap. 在官网使用ctrl+f查找想要的内容. 这里记一下Visual Studio Code软件的用法: ...