这是一篇翻译,为什么突然想翻译文章了呢,因为很多大佬们都说英语对程序员还是挺重要的,毕竟互联网的最新技术基本都在歪果仁那边,如果英语不好,不会看国外的文档的话,将会错失接触第一手资料的机会,失去很多先机。虽然我现在是个小辣鸡,可我还是有梦想滴,向国内大佬看齐!
正题开始。
一、建立Linux开发项目
项目建立完成后,您就可以用vs在linux服务器、桌面和设备上编写c++代码,您可以用vs管理这些机器的连接,vs将自动复制并远程构建你的源代码,并且可以通过调试器来调试和运行程序。我们的项目系统支持包括ARM在内特定的架构。
二、连接到Linux服务器
2.1 前提条件
目前我们仅仅支持在目标的linux机器上远程构建文件,我们不受特定的linux发行版本的限制但是我们又必须依赖一些工具。特别是openssh-server, g++, gdb 和 gdbserver这几款工具,您可以随意用一个管理安装包的工具来安装它们。(在基于Debian的系统上,使用“sudo apt-get install openssh-server g++ gdb gdbserver”命令就可以完成这些工具的安装)。
2.2 第一次连接
当您第一次连接到Linux机器上时,将会出现填写连接信息的提示,在Build(构建)项目时,将会自动触发该提示。
2.3 添加和删除连接
您可以前往Tools->Options,在搜索栏中搜索"connection",在connection manager中管理连接。同样,您也可以在Cross Platform选项卡中找到Connection Manager选项。
您可以在项目属性界面中的general settings中更改Remote Build Machine 选项来改变当前项目正在应用的连接。
三、项目属性
所有与C++ compilation有关的控制选项都在project properies 页面显示,我们将为您介绍一些特定于linux的细节。首先,在general settings选项中,您可以看到remote root被默认设置为 “~/projects/”,我们可以将该路径更改为我们实际的项目所在路径。
在General 选项中,我们可以配置Output Directory(输出路径) 和 Intermediate Directory(中间路径),我们同样可以更改Configuration Type来生成我们期望的文件类型,Configuration Type支持动态库和静态库。
在Linker选项组中的Input选项中我们可以添加静态依赖。
您可以向调试器传递一些额外的pre launch(预启动命令),以便完成在Linux服务器上完成一些类似于启动图形化应用程序的事情。
您同样可以发送Post Build events来远程控制服务器行为。在本例中,我们导出了一个 gpio pin(通用输入输出端口),这样可以在没有super user(超级用户)的权限下执行一些命令。