咖咖下载 - 精品软件高速下载!

当前位置:首页 > 系统教程 > 其它教程 > 详情

VS2017 遇到 DolphinDB如何编译 C++ API 动态库

时间:2022-05-08 来源:咖咖下载

Microsoft Visual Studio 是微软推出的一款功能强大的开发工具包,为各种平台和语言的软件开发提供了基本完整的工具集。本篇中我们将以VS2017 Release/x64 平台为例,向大家简要概述如何在 DolphinDB 搭建 C++ API 开发环境,并编译相应动态库;详细教程发布于DolphinDB github
 

编译环境:Visual Studio 2017

编译模式:Release x64

案例的程序实现思路是利用开源软件 rapidCsv 读入 csv 文件,然后调用 DolphinDB C++ API中的 BatchTableWriter 对象写入分布式表。编译过程主要分为环境准备添加源码项目配置编译运行四个阶段。

环境准备
首先,我们进行开发环境准备,包括 Visual Studio 2017、Git 的安装和 C++ API 代码的下载。需要注意的是,我们所下载的 API 分支应与 DolphinDB Server 的版本相匹配,若为1.30版本,API 须切换到 release130 分支进行下载,2.00等其他版本也依此类推。
 
添加源码
做好准备工作后,我们就可以开始新建 C++ 的动态链接库(DLL)项目,并将下载好的 API 源码添加至项目的源文件目录下。在这个案例中,下载 cppApiDemo.cpp 并替换项目同名文件,下载 rapidcsv.h 并拷贝到 cppApiDemo.cpp 所在目录。

项目配置

接下来进行一系列属性配置。有两种方法调出“属性页”对话框,我们可以选中解决方案资源管理器中的项目cppApiDemo,然后再选择主菜单中的 项目->属性;或者右键单击解决方案资源管理器中的项目cppApiDemo,然后选择 属性。这里我们以 Release x64 为例进行演示。
(1)头文件和库目录:在 VC++ 目录 - 包含目录 中添加 OpenSSL 和 API 的头文件目录;在 库目录 中添加 OpenSSL 和 API 的库目录。
(2)配置预处理宏定义:在 C/C++ 预处理器 中添加以下选项:
      • WIN32_LEAN_AND_MEAN;
      • _WINSOCK_DEPRECATED_NO_WARNINGS;
      • _CRT_SECURE_NO_WARNINGS; 
      • WINDOWS; 
      • NOMINMAX;
(3)设置依赖项:在 C/C++ - 链接器 - 输入 - 附加依赖项 中添加以下依赖项:
      • libDolphinDBAPI.lib;
      • ssleay32MD.lib;
      • libeay32MD.lib。
         

动态库编译

完成上述一系列工作后,我们便可以在 VS 中进行动态库的编译了,选择主菜单 生成 - 生成解决方案 即可生成位于相应目录的 lib 文件。运行前需要在本地部署一个 DolphinDB server,并用如下建库建表脚本先创建 dfs://iot/readings。
经过测试,我们在普通的台式机上部署 DolphinDB 单节点模式,并采用社区版默认配置导入一个大小超过 4G 的数据集(>1000万条记录),只需耗时约2分钟。
login(`admin, `123456)
if (exists('dfs://iot') ) dropDatabase('dfs://iot')
db1 = database('',VALUE,2016.11.15..2016.11.18)
db2 = database('',HASH,[SYMBOL,10])
db = database('dfs://iot',COMPO,[db1,db2])
schema=table(1:0,`time`device_id`battery_level`battery_status`battery_temperature`bssid`cpu_avg_1min`cpu_avg_5min`cpu_avg_15min`mem_free`mem_used`rssi`ssid, [DATETIME,SYMBOL,INT,SYMBOL,DOUBLE,SYMBOL,DOUBLE,DOUBLE,DOUBLE,LONG,LONG,SHORT,SYMBOL]) 
db.createPartitionedTable(schema,`readings,`time`device_id)

本篇以 VS2017 Release/x64平台为例,概述了如何搭建 DolphinDB C++ API 的 Visual Studio 开发环境,并用源码编译 API 动态库。欢迎大家下载体验 并参照以上案例进行编译试用。
 

 





 
    •  

相关内容

pl

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载