1 个不稳定版本
0.1.0 | 2023 年 1 月 13 日 |
---|
#1307 in 数学
4KB
Matlabblas-src
Matlab 提供的 BLAS 和 LAPACK 库的源码 crate。用于与 crates.io 上的 BLAS crates 一起使用。
安装和推荐
此 crate 是一个空的库;它的唯一作用是声明它链接到另一个外部库。
通常,要使用 BLAS,你会在你的 Cargo.toml
文件中做类似以下操作。
cblas = "0.4.0"
openblas-src = {version = "0.8", default-features = false, features = ["cblas", "static"], optional = true }
与所有 BLAS
系列的 crates 一样,你使用一个绑定/包装 crate 来编程(该 crate 会引入一个 sys
crate,它提供了实际的库符号),并选择一个后端,它提供实现(在上面的例子中,将是 openblas
)。
相反,如果你正在编译一个 mex
文件(例如,使用 rustmex
),并且想要使用 BLAS,这个 crate 就是为你准备的。你可以使用这个 crate 来链接到 Matlab 本身 提供的(并使用的)BLAS 后端,而不是链接到另一个 BLAS 后端。因此,此 crate 在 BLAS
架构中取代了 src
crate。
然而,这也带来了一些额外的复杂性。责任在于你,需要为 rustc
提供正确的路径。具体来说,你必须设置库搜索路径和要使用的库名称在你的 config.toml
文件中。
[target.<triple>.mex]
rustc-link-search = ["~/bin/R2022a/bin/glnxa64"]
rustc-link-lib = ["mwblas", "mwlapack"]
将 <triple>
替换为你正在编译的三元组(rustc -vV
的输出中的 "host" 字段)。当你运行 fullfile(matlabroot(), 'bin', computer('arch'))
命令时,Matlab 将打印出相应的搜索路径。