scs: Unable to pip install 3.2.4 on aarch64

Specifications

  • OS: aarch64
  • SCS Version: 3.2.4
  • Compiler:

Description

I know the issue template above says A common cause of issues is not linking BLAS/LAPACK libraries correctly. If you are having this issue please search for resources on installing and linking these libraries first. You can try openblas if you need a BLAS library.

but did something change between 3.2.3 and 3.2.4 that would relate to this?

I am now getting the following error and have reverted back to 3.2.3 with no such issues


 Collecting scs==3.2.4 (from -r requirements.txt (line 72))
   Downloading scs-3.2.4.tar.gz (1.5 MB)
      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.5/1.5 MB 32.1 MB/s eta 0:00:00
   Installing build dependencies: started
   Installing build dependencies: finished with status 'done'
   Getting requirements to build wheel: started
   Getting requirements to build wheel: finished with status 'done'
   Installing backend dependencies: started
   Installing backend dependencies: finished with status 'done'
   Preparing metadata (pyproject.toml): started
   Preparing metadata (pyproject.toml): finished with status 'error'
   error: subprocess-exited-with-error

   × Preparing metadata (pyproject.toml) did not run successfully.
   │ exit code: 1
   ╰─> [20 lines of output]
       + meson setup /tmp/pip-install-pmn6aiyt/scs_a40b4b98120348a6b05b5b26238178d0 /tmp/pip-inst>
       The Meson build system
       Version: 1.2.3
       Source dir: /tmp/pip-install-pmn6aiyt/scs_a40b4b98120348a6b05b5b26238178d0
       Build dir: /tmp/pip-install-pmn6aiyt/scs_a40b4b98120348a6b05b5b26238178d0/.mesonpy-g_hrwcg1
       Build type: native build
       Project name: scs
       Project version: undefined
       C compiler for the host machine: cc (gcc 11.4.0 "cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0")
       C linker for the host machine: cc ld.bfd 2.38
       Host machine cpu family: aarch64
       Host machine cpu: aarch64
       Program python found: YES (/home/ubuntu/src/algo-api/venv/bin/python3)
       Library openblas found: NO
       Library blas found: NO
       Library cblas found: NO

       ../meson.build:33:4: ERROR: Problem encountered: OpenBLAS or Netlib BLAS/CBLAS is required>

       A full log can be found at /tmp/pip-install-pmn6aiyt/scs_a40b4b98120348a6b05b5b26238178d0/>
       [end of output]

   note: This error originates from a subprocess, and is likely not a problem with pip.
 error: metadata-generation-failed
 × Encountered error while generating package metadata.
 ╰─> See above for output.
 note: This is an issue with the package mentioned above, not pip.
 hint: See above for details.

I only have the problem on aarch64 and not my amd64 system. Both are running linux.

If I do:

sudo apt-get install libopenblas-dev

it resolves it, but this was not necessary for me before, so I am trying to understand what changed? Manually installing this dependency is not an option for me long term at the moment so I will be staying on 3.2.3 which works fine

About this issue

  • Original URL
  • State: open
  • Created 8 months ago
  • Comments: 19 (4 by maintainers)

Most upvoted comments

I think I will go the route of installing libopenblas-dev as part of my deployment/usage

I would like to stay in the realm of what works best for you all too and isnt prone to breakage

I also want to be sure I am running things the way they should for performance reasons/etc.

Ok great, let us know if you have any problems with it. It should be a little faster too.

Another attempt you can make, @xconverge, is to clone the scs-python repository, git submodule --init and then python legacy_setup.py install, from the environment in which you want scs installed. You need setuptools, numpy, and scipy. This is broken on 3.12 but if you’re lucky it will work on earlier versions. (It is not supported any more.)