#bindings #cue #led #corsair #icue

sys cue-sdk-sys

Corsair iCUE SDK的FFI绑定

5个版本

0.0.5 2020年11月7日
0.0.4 2020年9月12日
0.0.3 2020年9月6日
0.0.2 2020年9月6日
0.0.1 2020年9月4日

#8 in #cue


cue-sdk 中使用

MIT 许可

125KB
2.5K SLoC

cue-sdk-sys

GithubRepo CratesIO DocsRS

“cue-sdk-sys”包是Corsair iCUE SDK的原生Rust绑定,是低级的、不安全的Rust绑定。

源码生成过程

以下描述了生成源代码的步骤以及手动调整生成的代码。

  1. 使用以下参数运行bindgen: bindgen <path_to_CUESDK.h> -- -x c++ -std=gnu++14
  2. 将函数调用组合成一个单独的 extern 块。
  3. #[must_use] 添加到返回布尔值 "成功" 的函数中。
  4. 导入rust FFI类型。
  5. 由于iCUE SDK文档指出SDK是线程安全的,因此将 SendSync 特性添加到非自动send/sync结构中。

构建

  • 下载适用于您的操作系统的正确iCUE SDK 发布版

MacOS

  • 将环境变量 CUE_SDK_FRAMEWORK_PATH 设置为指向包含框架的CUESDK目录(命名为 CUESDK.framework)。

Windows

  • 将环境变量 CUE_SDK_LIB_FILES_PATH 设置为指向CUESDK的 lib 文件夹。
  • redist CUESDK文件夹添加到您的路径中,以便进行开发和运行端到端测试,并将其包含在最终(构建)发布包中,供最终用户使用。

依赖关系