Repository navigation
Issues installing slycot via pip #155
Description
Activity
Hi,
Because we do not provide Slycot wheels on PyPI,
pip install slycottries to compile the source distribution.As the README says, compiling from source on Windows is tricky.
If you choose to not use conda as your environment, it is even trickier to get all the build requirements: BLAS/LAPACK headers, Numpy and Python headers, and most importantly a working build toolchain where NMake can find the VS C compiler.
The error message should give you a pointer into the right direction:
The CMAKE_C_COMPILER: cl is not a full path and was not found in the PATH. To use the NMake generator with Visual C++, cmake must be run from a shell that can use the compiler cl from the command line. This environment is unable to invoke the cl compiler. To fix this problem, run cmake from the Visual Studio Command Prompt (vcvarsall.bat). Tell CMake where to find the compiler by setting either the environment variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to the compiler, or to the compiler name if it is in the PATH.This is what the README is referring to by
On Windows, you need to install Microsoft Visual C++ 14.x provided e.g.
by Microsoft Visual Studio. To build, you'll need a command shell setup
for ... the Visual Studio build tools. See ... Microsoft Visual Studio setup for information on this.Windows users are encouraged to make use of the pre-built packages on conda-forge.
- addedbuild systemIssues with compiling, linking and installing SlycotIssues with compiling, linking and installing Slycot
on May 29, 2021 Closing, because this is not really a bug in Slycot.
we do not provide Slycot wheels on PyPI
Could you? It would be very helpful and save a huge amount of effort of everyone trying to build it themselves.
There are some available here, for others who might be looking
https://www.lfd.uci.edu/~gohlke/pythonlibs/#slycotWe don't publish wheels because we don't know how to build them.
I've tried and failed to build wheels for Windows before; if I recall correctly one basically has to bundle a BLAS&LAPACK library in the wheel, and I couldn't figure out how to do it.
The wheels linked above also depend on a consistent environment with all those packages.
The situation might have changed for the better since the last time it was attempted to also build wheels for Slycot. NumPy publishes wheels on PyPI too. If someone can come up with a reliable method to publish wheels compatible with those, feel free to contribute.
I am not a big fan of Anaconda, but for Windows, it is the best thing you can get. It solves all the problems of getting a compiled Slycot working with a BLAS/LAPACK which is also compatible with the used NumPy.
We don't publish wheels because we don't know how to build them.
I've tried and failed to build wheels for Windows before; if I recall correctly one basically has to bundle a BLAS&LAPACK library in the wheel, and I couldn't figure out how to do it.
You may want to consider switching to using the BLAS compatibility layer of BLIS - which is written in pure C99 with no dependancies.
This also removes needing a fortran compiler.
This also removes needing a fortran compiler.
You may have missed that SLICOT is written in fortran.
Hello,
Currently trying to install slycot with "pip install slycot"
While running "pip install slycot", I get the following output:
However, I cannot make sense of the output. I installed VS 2017 with the correct version v141.
(I run this code in cmd, VS, ... same issue)
Is there something else to do? Set path for VS or CMake,...?
Thanks!