使用VS2015进行LINUX开发

VS2015推出了跨平台开发,其中包括了对Linux程序开发的支持,最近刚好需要开发Linux程序,对其进行了一些研究。

首先介绍下涉及到的开发工具

开发工具

  • VS2015Update3,下文简称VS(可以下载免费社区版)
  • Visual C++ for Linux Development(VC_Linux.exe) 下载链接
  • VMware (虚拟机软件)
  • ubuntu-16.04-desktop-amd64.iso Linux(虚拟机镜像)

虚拟机软件和Linux系统镜像可以选择自己熟悉的版本,下文的介绍将以VMware和ubuntu系统为准。

环境配置

安装工具
1. 安装VS2015。
2. 安装VC_Linux.exe(注意此时要关闭所有的VS进程)
3. 完成后打开VS, 选择新建项目,如果能看到下图红框部分内容,则表示安装成功。 安装成功
4. 安装虚拟机软件并创建Linux虚拟机。

配置虚拟机
1. 将虚拟机网络设置为桥接模式(这样VS才能和虚拟机进行网络通信)
设置网络模式
2. 进入虚拟机中,打开终端,安装ssh-server(VS需要通过ssh和虚拟机进行通信),可以通过在终端中键入sudo apt-get install openssh-server 来安装
3. 终端键入 ifconfig命令查看虚拟机ip地址。
查看虚拟机ip地址

配置VS
打开VS,菜单栏点击工具->选项,在弹出对话框中左侧选择Cross Platform, 右侧点击Add,在弹出框中配置对应的信息。
这里写图片描述
点击Connect,若信息无误并且环境配置正确,则对话框自动关闭,代表连接成功,接下来就可以使用VS开发Linux程序了。

创建Linux项目

选择 新建项目->Cross Platform->linux
这里写图片描述
可以看到BlinkConsole ApplicationEmpty ProjectMakefile Project四种项目类型,其中Blink用于终端设备程序开发。

选择Console Application,项目名称改为VSLinuxTest,点击确定,VS会默认生成main.cpp
创建Linux项目

进入项目属性配置页面,选择Remote Setting
Linux项目Remote Setting

里面包含Linux项目所需的Linux主机的配置信息。

  • Target machine : 目标主机(本文中为ubuntu虚拟机)相关信息
  • RemoteRoot Directory : VS会将所有Linux类型项目上传到目标主机的该目录下(ubuntu对应 /home/projects)
  • Remote Project Directory: 当前项目对应的目标主机目录
  • 编译器和链接器,可选择g++或clang++

关闭属性配置页面,按F7,成功生成可执行程序。
生成项目

进入虚拟机,发现在/home目录下多了一个projects目录,打开后会发现VS将项目的代码和相关文件在目标机器上进行了拷贝。
项目拷贝

调试程序
回到VS,在代码中添加断点,F5调试程序,嗯,就和调试windows程序一样(注意Release模式下无法调试)

更多,请期待用VS2015开发Linux程序详细教程-实践篇,同样可以查看VS官方链接了解更多信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,在Windows下使用VS2015编译Linux x64程序,需要先安装Linux交叉编译工具链,可以从官方网站下载,也可以使用第三方提供的工具。 其次,需要在Linux系统上安装sqlite3数据库,并且安装对应的开发库,以便在编译时链接sqlite3库。 接着,需要在VS2015进行交叉编译配置,具体步骤如下: 1. 打开VS2015,在“工具”菜单中选择“选项”,在弹出的对话框中选择“跨平台”选项。 2. 在“跨平台”选项卡中,点击“连接器”选项,在“附加库目录”中添加Linux下sqlite3库的路径。 3. 点击“C++”选项,选择“常规”,在“其他包含目录”中添加sqlite3头文件的路径。 4. 在代码中包含sqlite3.h头文件,并链接sqlite3库即可。 对于具体的配置,可以参考以下示例代码: ```c++ #include <sqlite3.h> int main(int argc, char* argv[]) { sqlite3* db; int ret = sqlite3_open("test.db", &db); if (ret != SQLITE_OK) { // 处理错误 } // 执行SQL语句 sqlite3_exec(db, "CREATE TABLE IF NOT EXISTS test(id INTEGER PRIMARY KEY, name TEXT)", 0, 0, 0); // 关闭数据库连接 sqlite3_close(db); return 0; } ``` 在编译时,需要使用交叉编译工具链生成Linux x64可执行文件,具体命令可以参考以下示例: ```bash x86_64-linux-gnu-g++ main.cpp -o main -lsqlite3 ``` 其中,x86_64-linux-gnu-g++是交叉编译工具链的编译器,main.cpp是源代码文件,-o main指定生成的可执行文件名为main,-lsqlite3指定链接sqlite3库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值