天下网吧 >> 网吧系统 >> 系统动态 >> 正文

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

2016-4-30不详佚名

微软今天在官方MSDN博客上发文表示他们正在开发一个新的插件,一个能够让开发者在Visual Studio(以下简称VS)上建构能够在Linux上运行C++程序的套件。开发者可以借由这个插件将C++程序移植到Linux服务器、PC以及移动设备上,也同时可以借由这个插件将这些设备连接至VS。看到这个消息,网友纷纷表示,Visual Studio果然是宇宙第一IDE!

微软还在博客中详细介绍了该项目的使用方法,感兴趣可阅读如下原文

目前我们仅支持在远端的目标Linux机器提供建构服务。我们并没有限制特定的Linux发布版本,但我们仍旧在一些工具的表现上有些相依性的差异。需要特别注意的是,我们需要openssh-server、g++、gdb以及gdbserver。用你最习惯的套件管理工具来安装他们,例如在Debian类型的Linux就可以使用:

sudo apt-get install openssh-server g++ gdb gdbserver

安装

下载 Visual C++ for Linux Development extension 或从Visual Studio上的插件管理员来获得。目前我们在Visual Studio上的Android Tools上已有相依支持。如果你已经安装了VS的话,你可以借由Add Remove Programs来新增这些功能,编辑VS然后在Visual C++移动设备开发下选择他们。

要开始一个新的项目可以透过以下路径:Templates > Visual C++ > Cross Platform > Linux。

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

目前我们有三个可以使用的模板:针对像Raspberry Pi等物联网装置设计的Blink、最基本的应用程序样板Console Application以及让开发者自己选择需要加入的来源档以及从预设设定起的Empty。

你的第一个VS Linux项目

我们从建构一个主控台app开始。从模板新增完你的项目后,在printf叙述句的地方设下一个中断点,然后敲击F5或远端GDB除错器按钮。根据预设值,这个主控台app设定与debug/x64的环境相容。如果你的远端连线标的是x86或arm架构,那你需要先改变上述设定。在我演示的这个范例我使用的是x64 Ubuntu VM。

由于这是第一次连结到标的的Linux机器,所以会弹出一个连接资讯视窗,是由在建构项目时所触发的。

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

我们同时支持密码以及认证形式的验证方式,包含使用复杂密码的认证。在第一次成功连接后,我们会将你的连结资讯储存以便在日后需要连接时快速存取。你可以从Tools > Options > Cross Platform > Linux的路径来管理你已储存的连结资讯,以及是的,密码/复杂密码是已加密形式储存的。我们也同时计划在未来的更新版本中,在连接时无需储存连结资讯。

在连接的过程中,你的来源档会被复制到远端的Linux机器上,并触发gcc并根据项目的属性设定来建构原始码。在项目建构完毕之后,你的程序将会在远端的机器上执行,并停止在我们先前所设下的中断点上。

Linux项目属性

我们可以借由以下的项目属性来理解,东西是怎么被部署到远端Linux机器上的。

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

在remote settings下,你可以看到remote根目录是预设在~/projects/,且该路径下的远端项目目录会与我们的项目名称相符。从Linux机器上去看的话,我们可以在~/projects/ConsoleApplication1下发现建构后的成品main.cpp。

根据项目的General setting,可以了解到我们针对Output以及Intermediate路径是怎么设定的。除此之外,你可以发现到这个项目是被设定成一个应用程序的—代表我们的项目执行档ConsoleApplication1.out是在bin/x64/Debug/路径下。另外可以注意到的是,我们也同时支持静态以及动态的设定格式。

Linux物联网项目

现在我们来研究物联网装置的部分—以Raspberry Pi为例。你可以使用任何类型的Pi来执行Raspbian。在我们的Blink范例里我们使用wiringPi—如果你没有这个安装选项你也可以选择从apt或来源档来安装。在Tools > Options搜寻Linux来新增一个连结,然后点击“add”来新增一个连结到你的Raspberry Pi。

从项目属性设定的地方查看Build Events下的Remote Post-Build Events。

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

你可以借由这个设定在远端已建构好项目的Linux标的上执行指令。这个模板已先预设了针对LED输出的GPIO pin,所以我们不需要再以root的身份执行我们的执行档。

现在将一个LED连接到Raspberry Pi上的pin 17位置(如下图)。

Visual Studio支持用C++写Linux程序了,网友:果然最牛IDE

打开main.cpp档,并

本文来源:不详 作者:佚名

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。若文章侵犯了您的相关权益,请及时与我们联系,我们会及时处理,感谢您对本站的支持!联系Email:support@txwb.com,系统开号,技术支持,服务联系QQ:1175525021本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下