#求解器 #绑定 #ceres

sys ceres-solver-sys

Ceres 求解器的非安全 Rust 绑定

7 个版本

0.3.0 2024 年 2 月 26 日
0.2.2 2024 年 2 月 26 日
0.2.1 2023 年 2 月 28 日
0.1.0 2023 年 1 月 19 日

#133#求解器

Download history 40/week @ 2024-03-13 90/week @ 2024-03-20 291/week @ 2024-03-27 117/week @ 2024-04-03 279/week @ 2024-04-10 254/week @ 2024-04-17 52/week @ 2024-04-24 145/week @ 2024-05-01 11/week @ 2024-05-08 47/week @ 2024-05-15 34/week @ 2024-05-22 256/week @ 2024-05-29 364/week @ 2024-06-05 203/week @ 2024-06-12 45/week @ 2024-06-19 238/week @ 2024-06-26

984 每月下载量
2 个crate中使用(通过 ceres-solver

MIT/Apache

2.5MB
41K SLoC

C++ 32K SLoC // 0.2% comments FORTRAN Legacy 5.5K SLoC // 0.4% comments C 1K SLoC // 0.4% comments CUDA 817 SLoC // 0.1% comments Rust 488 SLoC // 0.0% comments Bazel 174 SLoC // 0.2% comments Shell 174 SLoC // 0.2% comments Python 158 SLoC // 0.6% comments JavaScript 51 SLoC // 0.1% comments XSL 28 SLoC

ceres-solver-sys

为 Ceres 求解器提供低级非安全 Rust 绑定

Test pre-commit.ci status Crates.io

目前,我们仅使用 bindgen 绑定 C API。测试的最小版本为 Ceres Solver 2.0

Cargo 功能标志

  • v2_1 封装 Ceres Solver 2.1 API,增加了 CUDA 支持
  • system(默认)链接系统版本的 Ceres Solver 库。默认情况下,它将是一个动态库,但您可以使用 pkg-config 进行调整
  • source(可选)覆盖 system 并链接由 ceres-solver-src crate 构建的静态库文件,它也应用 v2_1 功能标志,因为 ceres-solver-src crate 从源代码构建 Ceres Solver 2.2

system 功能需要 pkg-config 系统依赖,而 source 需要构建依赖,如 CMake 和支持 C++17 的编译器。

依赖项