Crates.io | ctp-sys |
lib.rs | ctp-sys |
version | 0.1.3 |
source | src |
created_at | 2023-11-21 06:15:58.659391 |
updated_at | 2023-11-27 09:43:40.151586 |
description | ctp rust binding |
homepage | |
repository | https://github.com/daedalus2022/ctp-sys |
max_upload_size | |
id | 1043759 |
size | 11,718,583 |
以 Rust 的方式,简化对接 CTPAPI 的过程,节省精力,快速上手
ctp-sys 提供的 ctp 官方 ctpapi(c++) 的rust版本, 使用 bindgen 转换 ctpapi(c++) 生成。
ctp-sys 目前支持 6.6.5.x(linux)版本, 对应 ctpapi(c++) 的生产版本: v6.6.5_20210924
通过 ctp-sys 库只能连接支持 ctpapi(c++) 官方实现的柜台,如:simnow; 不支持连接所谓的兼容 ctpapi(c++) 接口.
使用相对路径时,wrapper.h 中头文件需要使用双引号,否则会报错Unable to generate bindings: ClangDiagnostic("wrapper.h:1:10: error: 'ctp/6.6.7_20220304/linux64/tradeapi_se/ThostFtdcUserApiStruct.h' file not found with <angled> include; use \"quotes\" instead\n")
linux库名需要lib+"库名称"软连接后才能被ld读取找到
c++的头文件需要使用wrapper.hpp引入,否则无法识别class关键字:Generating Bindings to C++
bindgen 不支持c++的虚拟函数,使用rust-share方案。