Giter Club home page Giter Club logo

Comments (8)

bodono avatar bodono commented on June 7, 2024

The problem is that cvxpy has not been updated to use the latest SDP input format, v1.0.7 is the latest version with the old input format. Once cvxpy has been updated I will publish v1.0.7 to pip. Or if necessary I can do it before cvxpy is ready, and we can enforce that cvxpy use the old version.

from scs.

sergiocallegari avatar sergiocallegari commented on June 7, 2024

I understand. In fact, I have already noticed that cvxpy does not work with scs 1.1.0.

However, there is then a couple of different problems.

  1. [Most important] The command pip install scs fails on windows with scs 1.0.7 because compiling from source fails due to missing blas. Would it be possible to put precompiled binaries for Windows (ideally wheels) of 1.0.7 on Pypi?

Currently, the only pre-built scs that I was able to find is that on Gohlke's repository (http://www.lfd.uci.edu/~gohlke/pythonlibs/). However, that repo only contains scs 1.1.0.

  1. Cvxpy depends on scs without specifying any version. This means that cvxpy fails when using the most recent scs.

This issue is related to the (very unfortunate) choice of Python of not to allow the parallel installation of different versions of the same libraries.

from scs.

SteveDiamond avatar SteveDiamond commented on June 7, 2024

I'll update cvxpy very soon to handle scs 1.1.0, so a scs 1.1.0 wheel is fine.

from scs.

bodono avatar bodono commented on June 7, 2024

I'm not sure building a wheel for windows would work, since I think it would need to link (dynamically) against installed blas + lapack libraries, and if it's failing building from source because they're missing, then would a wheel help?

from scs.

bodono avatar bodono commented on June 7, 2024

I just uploaded scs v1.1.2 to pip, which I have verified installs correctly when calling pip install scs from a winpython install (however it can't solve SDPs due to the know linkage problem with numpy).

from scs.

sergiocallegari avatar sergiocallegari commented on June 7, 2024

Hi, just tested. Just a couple of notes, questions...

  1. 1.1.2 reports version 1.1.1
  2. I guess that 1.1.2 is still not working with cvxpy, until cvxpy is upgraded to work with the new scs interface, is this correct?
  3. What is the known linkage problem with numpy?

With respect to the previous question, I think that it might be possible to link statically when making the wheel. In any case, I have noticed that Christoph Gohlke already has binaries of scs 1.1.2 for windows.

from scs.

bodono avatar bodono commented on June 7, 2024
  1. Whoops..., that will be fixed in the next version. I guess I should start using bumpversion.
  2. Not yet, but Steven is working on it, and it sounds like he's nearly done.
  3. I don't fully understand it, but when compiling SCS asks numpy what blas/lapack libraries it has linked against and sometimes, depending on the numpy distro, those libraries don't exist, so SCS get's a linkage error at compile time and falls back to compiling without blas/lapack.

I don't know Christoph Gohlke, but if those binaries are working then that's great, he probably knows more about packaging up windows binaries than I do.

from scs.

SteveDiamond avatar SteveDiamond commented on June 7, 2024

@bodono would you mind looking into #40 as soon as you can? Once this issue is resolved the cvxpy interface to SCS 1.1.* will be finished.

from scs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.