8 个版本
0.3.0 | 2024年6月9日 |
---|---|
0.2.1 | 2023年10月13日 |
0.1.6 | 2023年2月14日 |
0.1.5 | 2022年11月6日 |
0.1.1 | 2022年10月23日 |
#1001 in 数学
579 每月下载量
用于 2 个 Crates (通过 graphblas_sparse_linear_a…)
1MB
21K SLoC
包含 (静态库, 505KB) libgomp.a
suitesparse_graphblas_sys
Rust 对 SuiteSparse:GraphBLAS 的绑定。Crates 应当不直接使用这些绑定。相反,crate graphblas_sparse_linear_algebra 提供了一个安全且符合习惯的包装。
GraphBLAS 实现
suitesparse_graphblas_sys 包装了 SuiteSparse:GraphBLAS v8.2.0。由 Timothy A. Davis 实现的 GraphBLAS。此实现与 GraphBLAS 规范版本 2.0 大部分兼容。
要求
suitesparse_graphblas_sys 使用由 Timothy A. Davis 开发的 SuiteSparse:GraphBLAS GraphBLAS 实现。
默认情况下,graphblas_sparse_linear_algebra 会为 SuiteSparse:GraphBLAS 创建一个新的构建版本并将其作为静态依赖项链接。
Git
在构建时,suitesparse_graphblas_sys 会克隆 SuiteSparse:GraphBLAS 仓库。构建系统必须安装 Git 并连接到互联网。
C 编译器
suitesparse_graphblas_sys 包含一个构建脚本来从源代码构建 SuiteSparse:GraphBLAS。构建过程需要一个已安装的 C 编译器,例如 GCC。
环境变量
suitesparse_graphblas_sys 的构建脚本读取以下环境变量
- SUITESPARSE_GRAPHBLAS_SYS_COMPILER_PATH — 构建系统上 C 编译器的路径。例如,当在 Ubuntu 22.04 上使用 GCC11 时,请设置环境变量为: "/usr/lib/gcc/x86_64-linux-gnu/11"
- SUITESPARSE_GRAPHBLAS_SYS_OPENMP_STATIC_LIBRARY_NAME — 要使用的 openmp 实现的名称。例如,当使用 GCC 时,请设置环境变量为 "gomp"
Bindgen 和 CMake
suitesparse_graphblas_sys 依赖于 bindgen,请确保构建系统满足其 要求
suitesparse_graphblas_sys 还需要在构建系统上安装 CMake。
贡献
太棒了,欢迎贡献。suitesparse_graphblas_sys 和您的贡献可能会在未来重新授权并集成到商业软件中。因此,当您提交拉取请求时,您将被要求同意贡献者许可协议。
许可
suitesparse_graphblas_sys 采用Creative Commons Attribution Non Commercial 4.0 International 许可。有关其他许可选项,请联系 Sam Dekker。
兼容性
已在 Ubuntu 22.04.1 LTS 上进行测试,使用的是发行版的标准 GCC 编译器。
无运行时依赖
~0–3MB
~64K SLoC