@@ -18,6 +18,7 @@ Currently three LAPACKE implementations are supported and tested:
18
18
- needs ` cmake ` and ` gfortran `
19
19
- [ Intel MKL] ( https://github.com/termoshtt/rust-intel-mkl ) (non-free license, see the linked page)
20
20
- needs ` curl `
21
+
21
22
There are two ways to link LAPACKE backend:
22
23
23
24
### backend features (recommended)
@@ -26,7 +27,7 @@ There are three features corresponding to the backend implementations (`openblas
26
27
``` toml
27
28
[dependencies ]
28
29
ndarray = " 0.12"
29
- ndarray-linalg = { version = " 0.9 " , features = [" openblas" ] }
30
+ ndarray-linalg = { version = " 0.10 " , features = [" openblas" ] }
30
31
```
31
32
32
33
### link backend crate manually
@@ -36,7 +37,7 @@ You should link a LAPACKE implementation to a final crate (like binary executabl
36
37
``` toml
37
38
[dependencies ]
38
39
ndarray = " 0.12"
39
- ndarray-linalg = " 0.9 "
40
+ ndarray-linalg = " 0.10 "
40
41
openblas-src = " 0.5" # or another backend of your choice
41
42
42
43
```
@@ -46,7 +47,14 @@ You must add `extern crate` to your code in this case:
46
47
``` rust
47
48
extern crate ndarray;
48
49
extern crate ndarray_linalg;
49
- extern crate openblas_src; // or another backend of your choice
50
+ extern crate openblas_src; // or another backend of your choice
51
+ ```
52
+
53
+ You will get a "undefined reference" link error if you forget to add any backend:
54
+
55
+ ```
56
+ undefined reference to `cblas_dgemm'
57
+ undefined reference to `LAPACKE_dsyev'
50
58
```
51
59
52
60
### For librarian
@@ -55,7 +63,7 @@ If you creating a library depending on this crate, we encourage you not to link
55
63
``` toml
56
64
[dependencies ]
57
65
ndarray = " 0.12"
58
- ndarray-linalg = { version = " 0.9 " , default-features = false }
66
+ ndarray-linalg = { version = " 0.10 " , default-features = false }
59
67
```
60
68
61
69
However, if you hope simplicity instead of the flexibility, you can link your favorite backend in the way described above.
0 commit comments