Not able to compile on intel based Mac

Open
#315 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
macos, rust
Domain
build-system

Research direction

Start with the reported Cargo.toml and run the supplied minimal Rust example with cargo run on Intel macOS. Investigate the OpenBLAS and linker setup behind the __gfortran_concat_string errors; done means the example compiles and runs successfully on the reported platform.

Written by the indexing model from the issue text.

Description

Issue I have
= note: ld: warning: could not create compact unwind for _chseqr_: stack subq instruction is too different from dwarf stack size
          ld: warning: could not create compact unwind for _dhseqr_: stack subq instruction is too different from dwarf stack size
          ld: warning: could not create compact unwind for _shseqr_: stack subq instruction is too different from dwarf stack size
          ld: warning: could not create compact unwind for _zhseqr_: stack subq instruction is too different from dwarf stack size
          Undefined symbols for architecture x86_64:
            "__gfortran_concat_string", referenced from:
                _dormbr_ in libopenblas_src-4151971bd483fad6.rlib(dormbr.o)
                _dormlq_ in libopenblas_src-4151971bd483fad6.rlib(dormlq.o)
                _dormqr_ in libopenblas_src-4151971bd483fad6.rlib(dormqr.o)
          ld: symbol(s) not found for architecture x86_64
          clang: error: linker command failed with exit code 1 (use -v to see invocation)

Code to reproduce this issue

use ndarray::{array, Array, Ix2};
use ndarray_linalg::{LeastSquaresSvd, LeastSquaresSvdInto, LeastSquaresSvdInPlace};

fn main() {
    let array_a: Array<f64, Ix2> = array![[1.,2.]];
    let array_b: Array<f64, Ix2> = array![[1.,2.]];
    let solution = array_b.least_squares(&array_a).unwrap().solution;
    println!("{:?}", solution);
}

cargo.toml

[package]
name = "example"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
ndarray = { version = "0.15.0", features = ["approx", "blas"] }
ndarray-stats = "0.5"
ndarray-linalg = { version = "0.14.1", features = ["openblas-static"] }

just do cargo run will reproduce this issue

Version information
rustup --version
rustup 1.24.3 (ce5817a94 2021-05-31)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.63.0-nightly (bb8c2f411 2022-06-19)`

rustc --version
rustc 1.63.0-nightly (bb8c2f411 2022-06-19)

cargo --version
cargo 1.63.0-nightly (8d42b0e87 2022-06-17)

MacOS 12 with Intel Chip

Any help/pointer will be appreciated!

Dominant language
Rust
Stars
452
Forks
95
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from rust-ndarray/ndarray-linalg

All issues in rust-ndarray/ndarray-linalg

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.