6 个版本
| 0.10.9 | 2024年2月3日 |
|---|---|
| 0.10.8 | 2023年1月14日 |
| 0.10.7 | 2022年12月25日 |
| 0.10.5 | 2022年8月27日 |
| 0.1.1 | 2021年1月30日 |
#103 in 构建工具
13,124 每月下载量
在 80 个crate中使用(通过 openblas-src)
34KB
805 行
openblas-src

该软件包通过 OpenBLAS 提供BLAS和LAPACK的源代码。
架构
配置
以下Cargo特性被支持:
cache在共享目录中构建而不是在target中(见下文),cblas构建 CBLAS(默认启用),lapacke构建 LAPACKE(默认启用),static将 OpenBLAS 静态链接,以及system跳过构建捆绑的 OpenBLAS。
缓存
此 cache 特性允许在不同 target 目录的crate之间重用OpenBLAS构建产品。这避免了不必要的OpenBLAS重建。然而,这也防止了命令正常工作,因为上述构建产品不会被该命令删除。
OpenBLAS的二进制文件将被放置在${XDG_DATA_HOME}/openblas_build/[构建配置对象的哈希值]。例如,使用LAPACK构建和不使用LAPACK构建将被放置在不同的目录中。如果您将OpenBLAS构建为共享库,则需要将上述目录添加到LD_LIBRARY_PATH(适用于Linux)或DYLD_LIBRARY_PATH(适用于macOS)。由于Windows不支持从源代码构建(见下一节),因此此功能也不支持。
Windows和vcpkg
在Windows上,openblas-src依赖于vcpkg来查找OpenBLAS。在构建之前,您必须为目标三元组和链接类型安装正确的OpenBLAS。例如,对于x86_64-pc-windows-msvc工具链的动态链接,安装openblas的x64-windows三元组
vcpkg install openblas --triplet x64-windows
要静态链接OpenBLAS,为x64-windows-static-md三元组安装openblas
vcpkg install openblas --triplet x64-windows-static-md
要静态链接OpenBLAS和C运行时(CRT),为x64-windows-static三元组安装openblas
vcpkg install openblas --triplet x64-windows-static
并使用+crt-static选项进行构建
RUSTFLAGS='-C target-feature=+crt-static' cargo build --target x86_64-pc-windows-msvc
有关详细信息,请参阅Rust参考中的“静态和动态C运行时”。
交叉编译
除了提供--target选项给cargo build外,还必须指定OpenBLAS的交叉编译变量。它们可以设置为OPENBLAS_前缀的环环境变量,如下所示:OPENBLAS_CC,OPENBLAS_FC,OPENBLAS_HOSTCC,和OPENBLAS_TARGET。
贡献
您的贡献非常受重视。请随时提出问题或发起pull请求。请注意,提交给项目的任何贡献都将根据LICENSE.md中给出的条款进行授权。
依赖项
~4–13MB
~200K SLoC