Is Prime only built for Mac? If anyone knows how to use it on Windows, please share. I have tried installing it using Conda, WSL, and even cloning it, but everything is giving me the same issue.
Collecting primme Using cached primme-3.2.1.tar.gz (543 kB) Preparing metadata (setup.py) ... done Requirement already satisfied: future in ./qeenv/lib/python3.10/site-packages (from primme) (0.18.3) Requirement already satisfied: numpy in ./qeenv/lib/python3.10/site-packages (from primme) (1.26.3) Requirement already satisfied: scipy in ./qeenv/lib/python3.10/site-packages (from primme) (1.11.4) Using legacy 'setup.py install' for primme, since package 'wheel' is not installed. Installing collected packages: primme Running setup.py install for primme ... error error: subprocess-exited-with-error
× Running setup.py install for primme did not run successfully. │ exit code: 1 ╰─> [208 lines of output] /tmp/pip-install-8e912w4n/primme_5d9f74a00c4f497faee52fe5c5fb851f/setup.py:38: DeprecationWarning:
`numpy.distutils` is deprecated since NumPy 1.23.0, as a result
of the deprecation of `distutils` itself. It will be removed for
Python >= 3.12. For older Python versions it will remain present.
It is recommended to use `setuptools < 60.0` for those Python versions.
For more details, see:
https://numpy.org/devdocs/reference/distutils_status_migration.html
from numpy.distutils.system_info import get_info
/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/distutils/system_info.py:1974: UserWarning:
Lapack (http://www.netlib.org/lapack/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [lapack]) or by setting
the LAPACK environment variable.
return getattr(self, '_calc_info_{}'.format(name))()
/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/distutils/system_info.py:1974: UserWarning:
Lapack (http://www.netlib.org/lapack/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [lapack_src]) or by setting
the LAPACK_SRC environment variable.
return getattr(self, '_calc_info_{}'.format(name))()
/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/distutils/system_info.py:2159: UserWarning:
Optimized (vendor) Blas libraries are not found.
Falls back to netlib Blas library which has worse performance.
A better performance should be easily gained by switching
Blas library.
if self._calc_info(blas):
/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/distutils/system_info.py:2159: UserWarning:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
if self._calc_info(blas):
/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/distutils/system_info.py:2159: UserWarning:
Blas (http://www.netlib.org/blas/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [blas_src]) or by setting
the BLAS_SRC environment variable.
if self._calc_info(blas):
running install
/home/avsqbit/qeenv/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_ext
building 'primme' extension
INFO: C compiler: x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
creating build
creating build/temp.linux-x86_64-3.10
creating build/temp.linux-x86_64-3.10/primme
creating build/temp.linux-x86_64-3.10/primme/src
creating build/temp.linux-x86_64-3.10/primme/src/eigs
creating build/temp.linux-x86_64-3.10/primme/src/linalg
creating build/temp.linux-x86_64-3.10/primme/src/svds
INFO: compile options: '-DNDEBUG -DF77UNDERSCORE -I/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/core/include -Iprimme/include -Iprimme/src/include -I/home/avsqbit/qeenv/include -I/usr/include/python3.10 -c'
INFO: x86_64-linux-gnu-gcc: primme.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/auxiliary_eigs.cppINFO: x86_64-linux-gnu-gcc: primme/src/eigs/auxiliary_eigs_normal.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/convergence.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/correction.cppINFO: x86_64-linux-gnu-gcc: primme/src/eigs/factorize.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/init.cppINFO: x86_64-linux-gnu-gcc: primme/src/eigs/inner_solve.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/main_iter.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/primme_c.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/ortho.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/primme_interface.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/primme_f77.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/restart.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/update_W.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/update_projection.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/eigs/solve_projection.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/linalg/auxiliary.cppINFO: x86_64-linux-gnu-gcc: primme/src/linalg/blaslapack.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/linalg/magma_wrapper.cppINFO: x86_64-linux-gnu-gcc: primme/src/linalg/memman.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/linalg/wtime.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/svds/primme_svds_c.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
INFO: x86_64-linux-gnu-gcc: primme/src/svds/primme_svds_f77.cpp
INFO: x86_64-linux-gnu-gcc: primme/src/svds/primme_svds_interface.cpp
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
[Errno 2] No such file or directory: 'x86_64-linux-gnu-gcc'
error: Command "x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DNDEBUG -DF77UNDERSCORE -I/home/avsqbit/qeenv/lib/python3.10/site-packages/numpy/core/include -Iprimme/include -Iprimme/src/include -I/home/avsqbit/qeenv/include -I/usr/include/python3.10 -c primme.cpp -o build/temp.linux-x86_64-3.10/primme.o" failed with exit status 127
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure
× Encountered error while trying to install package. ╰─> primme
note: This is an issue with the package mentioned above, not pip. hint: See above for output from the failure.
I just had the exact same error, trying to install primme on a Ubuntu 22.04.
I was able to install it by rolling back to older versions of setuptools, numpy, and also installing some dependencies manually:
Dependencies that were missing were LAPACK and BLAS, I installed them by running:
Then, inside the python environment, I rolled back
setuptoolsandnumpy:I also installed
wheel, although I'm not sure it was necessary:After this, the installation of
primmeworked for me.Hopefully it also solves this problem in windows.