Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

problem about install scs for gpu #184

Open
1359347500cwc opened this issue Nov 13, 2021 · 6 comments
Open

problem about install scs for gpu #184

1359347500cwc opened this issue Nov 13, 2021 · 6 comments

Comments

@1359347500cwc
Copy link

Specifications

  • OS:Linux
  • SCS Version:2.1.4

Description

when i use setup.py -- setup.py install --scs --gpu it give me a fatal error: scs_matrix.h: No such file or directory

Output

GMTracker) cwc@imc-Z9PE-D8-WS:~/GMTracker/scs-python$ python setup.py install --scs --gpu
Namespace(blas64=False, extraverbose=False, float32=False, gpu=True, gpu_atrans=True, int32=False, scs=True)
running install
running bdist_egg
running egg_info
writing scs.egg-info/PKG-INFO
writing dependency_links to scs.egg-info/dependency_links.txt
writing requirements to scs.egg-info/requires.txt
writing top-level names to scs.egg-info/top_level.txt
blas_mkl_info:
NOT AVAILABLE
blis_info:
NOT AVAILABLE
openblas_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
blas_opt_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
lapack_mkl_info:
NOT AVAILABLE
openblas_lapack_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
lapack_opt_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
{'libraries': ['mkl_rt', 'pthread'], 'library_dirs': ['/home/cwc/anaconda3/envs/GMTracker/lib'], 'define_macros': [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)], 'include_dirs': ['/usr/local/include', '/usr/include', '/home/cwc/anaconda3/envs/GMTracker/include']}
{'libraries': ['mkl_rt', 'pthread'], 'library_dirs': ['/home/cwc/anaconda3/envs/GMTracker/lib'], 'define_macros': [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)], 'include_dirs': ['/usr/local/include', '/usr/include', '/home/cwc/anaconda3/envs/GMTracker/include']}
In file included from /home/cwc/anaconda3/envs/GMTracker/lib/python3.6/site-packages/numpy/core/include/numpy/ndarraytypes.h:1822:0,
from /home/cwc/anaconda3/envs/GMTracker/lib/python3.6/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
from /home/cwc/anaconda3/envs/GMTracker/lib/python3.6/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from src/scsmodule.c:5:
/home/cwc/anaconda3/envs/GMTracker/lib/python3.6/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it with "
^~~~~~~
src/scsmodule.c:7:10: fatal error: scs_matrix.h: No such file or directory
#include "scs_matrix.h"
^~~~~~~~~~~~~~
compilation terminated.
error: Command "gcc -pthread -B /home/cwc/anaconda3/envs/GMTracker/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DPYTHON -DCTRLC=1 -DCOPYAMATRIX -DUSE_LAPACK -DSCIPY_MKL_H -DHAVE_CBLAS -DSCIPY_MKL_H -DHAVE_CBLAS -Iscs/include -Iscs/linsys -Iscs/linsys/cpu/direct/ -Iscs/linsys/external/amd -Iscs/linsys/external/dqlql -I/home/cwc/anaconda3/envs/GMTracker/lib/python3.6/site-packages/numpy/core/include -I/usr/local/include -I/usr/include -I/home/cwc/anaconda3/envs/GMTracker/include -I/usr/local/include -I/usr/include -I/home/cwc/anaconda3/envs/GMTracker/include -I/home/cwc/anaconda3/envs/GMTracker/include/python3.6m -c src/scsmodule.c -o build/temp.linux-x86_64-3.6/src/scsmodule.o -O3" failed with exit status 1

@b-grimaud
Copy link

b-grimaud commented Nov 15, 2021

Just tried it using Zorin OS (based on Ubuntu 20.04), didn't work either, essentially the same error with a slightly more verbose output :

~/scs-python$ python setup.py install --scs --gpu
Namespace(blas64=False, extraverbose=False, float32=False, gpu=True, gpu_atrans=True, int32=False, scs=True)
running install
running bdist_egg
running egg_info
creating scs.egg-info
writing scs.egg-info/PKG-INFO
writing dependency_links to scs.egg-info/dependency_links.txt
writing requirements to scs.egg-info/requires.txt
writing top-level names to scs.egg-info/top_level.txt
writing manifest file 'scs.egg-info/SOURCES.txt'
blas_mkl_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/user/anaconda3/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/user/anaconda3/include']
blas_opt_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/user/anaconda3/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/user/anaconda3/include']
lapack_mkl_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/user/anaconda3/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/user/anaconda3/include']
lapack_opt_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/user/anaconda3/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/user/anaconda3/include']
{'libraries': ['mkl_rt', 'pthread'], 'library_dirs': ['/home/user/anaconda3/lib'], 'define_macros': [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)], 'include_dirs': ['/home/user/anaconda3/include']}
{'libraries': ['mkl_rt', 'pthread'], 'library_dirs': ['/home/user/anaconda3/lib'], 'define_macros': [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)], 'include_dirs': ['/home/user/anaconda3/include']}
scs/src/rw.c: In function ‘scs_read_data’:
scs/src/rw.c:176:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  176 |   fread(&(file_int_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:177:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  177 |   fread(&(file_float_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:194:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  194 |   fread(&(file_version_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:195:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  195 |   fread(file_version, 1, file_version_sz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_cone’:
scs/src/rw.c:33:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   33 |   fread(&(k->z), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:34:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   34 |   fread(&(k->l), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:35:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   35 |   fread(&(k->bsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:38:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   38 |   fread(k->bl, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:39:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   39 |   fread(k->bu, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:40:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   40 |   fread(&(k->qsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:42:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   42 |   fread(k->q, sizeof(scs_int), k->qsize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:43:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   43 |   fread(&(k->ssize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:45:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   45 |   fread(k->s, sizeof(scs_int), k->ssize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:46:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   46 |   fread(&(k->ep), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:47:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   47 |   fread(&(k->ed), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:48:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   48 |   fread(&(k->psize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:50:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   50 |   fread(k->p, sizeof(scs_float), k->psize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_data’:
scs/src/rw.c:133:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  133 |   fread(&(d->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:134:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  134 |   fread(&(d->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:137:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  137 |   fread(d->b, sizeof(scs_float), d->m, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:138:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  138 |   fread(d->c, sizeof(scs_float), d->n, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_amatrix’:
scs/src/rw.c:104:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  104 |   fread(&(A->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:105:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  105 |   fread(&(A->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:107:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  107 |   fread(A->p, sizeof(scs_int), A->n + 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:111:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  111 |   fread(A->x, sizeof(scs_float), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:112:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  112 |   fread(A->i, sizeof(scs_int), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_stgs’:
scs/src/rw.c:76:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   76 |   fread(&(s->normalize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:77:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   77 |   fread(&(s->scale), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:78:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   78 |   fread(&(s->rho_x), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:79:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   79 |   fread(&(s->max_iters), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:80:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   80 |   fread(&(s->eps_abs), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:81:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   81 |   fread(&(s->eps_rel), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:82:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   82 |   fread(&(s->eps_infeas), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:83:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   83 |   fread(&(s->alpha), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:84:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   84 |   fread(&(s->verbose), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:85:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   85 |   fread(&(s->warm_start), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:86:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   86 |   fread(&(s->acceleration_lookback), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:87:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   87 |   fread(&(s->acceleration_interval), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:88:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   88 |   fread(&(s->adaptive_scale), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarraytypes.h:1944,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/arrayobject.h:4,
                 from src/scsmodule.c:5:
/home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
   17 | #warning "Using deprecated NumPy API, disable it with " \
      |  ^~~~~~~
In file included from scs/include/aa.h:8,
                 from scs/include/scs.h:10,
                 from scs/linsys/external/amd/SuiteSparse_config.h:47,
                 from scs/linsys/external/amd/SuiteSparse_config.c:28:
scs/include/glbopts.h:70:21: warning: initialization of ‘int (*)(const char *, ...)’ from incompatible pointer type ‘void (*)(const char *, ...)’ [-Wincompatible-pointer-types]
   70 | #define _scs_printf PySys_WriteStdout
      |                     ^~~~~~~~~~~~~~~~~
scs/linsys/external/amd/SuiteSparse_config.c:54:56: note: in expansion of macro ‘_scs_printf’
   54 |     _scs_malloc, _scs_calloc, _scs_realloc, _scs_free, _scs_printf,
      |                                                        ^~~~~~~~~~~
scs/include/glbopts.h:70:21: note: (near initialization for ‘SuiteSparse_config.printf_func’)
   70 | #define _scs_printf PySys_WriteStdout
      |                     ^~~~~~~~~~~~~~~~~
scs/linsys/external/amd/SuiteSparse_config.c:54:56: note: in expansion of macro ‘_scs_printf’
   54 |     _scs_malloc, _scs_calloc, _scs_realloc, _scs_free, _scs_printf,
      |                                                        ^~~~~~~~~~~
scs/linsys/external/amd/SuiteSparse_config.c: In function ‘SuiteSparse_start’:
scs/linsys/external/amd/SuiteSparse_config.c:82:37: warning: assignment to ‘int (*)(const char *, ...)’ from incompatible pointer type ‘void (*)(const char *, ...)’ [-Wincompatible-pointer-types]
   82 |     SuiteSparse_config.printf_func  = _scs_printf ;
      |                                     ^
scs/src/rw.c: In function ‘scs_read_data’:
scs/src/rw.c:176:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  176 |   fread(&(file_int_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:177:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  177 |   fread(&(file_float_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:194:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  194 |   fread(&(file_version_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:195:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  195 |   fread(file_version, 1, file_version_sz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_cone’:
scs/src/rw.c:33:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   33 |   fread(&(k->z), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:34:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   34 |   fread(&(k->l), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:35:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   35 |   fread(&(k->bsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:38:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   38 |   fread(k->bl, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:39:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   39 |   fread(k->bu, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:40:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   40 |   fread(&(k->qsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:42:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   42 |   fread(k->q, sizeof(scs_int), k->qsize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:43:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   43 |   fread(&(k->ssize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:45:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   45 |   fread(k->s, sizeof(scs_int), k->ssize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:46:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   46 |   fread(&(k->ep), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:47:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   47 |   fread(&(k->ed), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:48:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   48 |   fread(&(k->psize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:50:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   50 |   fread(k->p, sizeof(scs_float), k->psize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_data’:
scs/src/rw.c:133:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  133 |   fread(&(d->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:134:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  134 |   fread(&(d->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:137:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  137 |   fread(d->b, sizeof(scs_float), d->m, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:138:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  138 |   fread(d->c, sizeof(scs_float), d->n, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_amatrix’:
scs/src/rw.c:104:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  104 |   fread(&(A->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:105:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  105 |   fread(&(A->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:107:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  107 |   fread(A->p, sizeof(scs_int), A->n + 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:111:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  111 |   fread(A->x, sizeof(scs_float), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:112:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  112 |   fread(A->i, sizeof(scs_int), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_stgs’:
scs/src/rw.c:76:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   76 |   fread(&(s->normalize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:77:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   77 |   fread(&(s->scale), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:78:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   78 |   fread(&(s->rho_x), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:79:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   79 |   fread(&(s->max_iters), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:80:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   80 |   fread(&(s->eps_abs), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:81:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   81 |   fread(&(s->eps_rel), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:82:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   82 |   fread(&(s->eps_infeas), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:83:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   83 |   fread(&(s->alpha), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:84:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   84 |   fread(&(s->verbose), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:85:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   85 |   fread(&(s->warm_start), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:86:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   86 |   fread(&(s->acceleration_lookback), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:87:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   87 |   fread(&(s->acceleration_interval), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:88:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   88 |   fread(&(s->adaptive_scale), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarraytypes.h:1944,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/arrayobject.h:4,
                 from src/scsmodule.c:5:
/home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
   17 | #warning "Using deprecated NumPy API, disable it with " \
      |  ^~~~~~~
In file included from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarraytypes.h:1944,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
                 from /home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/arrayobject.h:4,
                 from src/scsmodule.c:5:
/home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
   17 | #warning "Using deprecated NumPy API, disable it with " \
      |  ^~~~~~~
scs/src/rw.c: In function ‘scs_read_data’:
scs/src/rw.c:176:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  176 |   fread(&(file_int_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:177:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  177 |   fread(&(file_float_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:194:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  194 |   fread(&(file_version_sz), sizeof(uint32_t), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:195:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  195 |   fread(file_version, 1, file_version_sz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_cone’:
scs/src/rw.c:33:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   33 |   fread(&(k->z), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:34:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   34 |   fread(&(k->l), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:35:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   35 |   fread(&(k->bsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:38:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   38 |   fread(k->bl, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:39:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   39 |   fread(k->bu, sizeof(scs_float), MAX(k->bsize - 1, 0), fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:40:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   40 |   fread(&(k->qsize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:42:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   42 |   fread(k->q, sizeof(scs_int), k->qsize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:43:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   43 |   fread(&(k->ssize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:45:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   45 |   fread(k->s, sizeof(scs_int), k->ssize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:46:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   46 |   fread(&(k->ep), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:47:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   47 |   fread(&(k->ed), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:48:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   48 |   fread(&(k->psize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:50:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   50 |   fread(k->p, sizeof(scs_float), k->psize, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_data’:
scs/src/rw.c:133:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  133 |   fread(&(d->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:134:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  134 |   fread(&(d->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:137:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  137 |   fread(d->b, sizeof(scs_float), d->m, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:138:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  138 |   fread(d->c, sizeof(scs_float), d->n, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_amatrix’:
scs/src/rw.c:104:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  104 |   fread(&(A->m), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:105:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  105 |   fread(&(A->n), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:107:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  107 |   fread(A->p, sizeof(scs_int), A->n + 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:111:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  111 |   fread(A->x, sizeof(scs_float), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:112:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
  112 |   fread(A->i, sizeof(scs_int), Anz, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c: In function ‘read_scs_stgs’:
scs/src/rw.c:76:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   76 |   fread(&(s->normalize), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:77:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   77 |   fread(&(s->scale), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:78:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   78 |   fread(&(s->rho_x), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:79:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   79 |   fread(&(s->max_iters), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:80:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   80 |   fread(&(s->eps_abs), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:81:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   81 |   fread(&(s->eps_rel), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:82:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   82 |   fread(&(s->eps_infeas), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:83:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   83 |   fread(&(s->alpha), sizeof(scs_float), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:84:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   84 |   fread(&(s->verbose), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:85:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   85 |   fread(&(s->warm_start), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:86:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   86 |   fread(&(s->acceleration_lookback), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:87:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   87 |   fread(&(s->acceleration_interval), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scs/src/rw.c:88:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
   88 |   fread(&(s->adaptive_scale), sizeof(scs_int), 1, fin);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from scs/linsys/gpu/gpu.c:1:
scs/linsys/gpu/gpu.h:14:10: fatal error: cublas_v2.h: Aucun fichier ou dossier de ce type
   14 | #include <cublas_v2.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
In file included from scs/linsys/gpu/indirect/private.h:10,
                 from scs/linsys/gpu/indirect/private.c:1:
scs/linsys/gpu/gpu.h:14:10: fatal error: cublas_v2.h: Aucun fichier ou dossier de ce type
   14 | #include <cublas_v2.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
error: Command "gcc -pthread -B /home/user/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DPYTHON -DCTRLC=1 -DCOPYAMATRIX -DGPU_TRANSPOSE_MAT=1 -DPY_GPU -DINDIRECT=1 -DUSE_LAPACK -DSCIPY_MKL_H -DHAVE_CBLAS -DSCIPY_MKL_H -DHAVE_CBLAS -Iscs/include -Iscs/linsys -I/usr/local/cuda/include -Iscs/linsys/gpu/ -Iscs/linsys/gpu/indirect -I/home/user/anaconda3/lib/python3.8/site-packages/numpy/core/include -I/home/user/anaconda3/include -I/home/user/anaconda3/include -I/home/user/anaconda3/include/python3.8 -c scs/linsys/gpu/gpu.c -o build/temp.linux-x86_64-3.8/scs/linsys/gpu/gpu.o -O3" failed with exit status 1

Also tried building from source on Windows 10, and also got some "-O3" error.

EDIT : Just realized my Linux setup doesn't have a proper GPU. That might be the case for the original issue as well.
That being said, I still get a similar output when trying to build on my Windows setup, which does have a GPU with proper drivers and CUDA installed.

@bodono
Copy link
Member

bodono commented Nov 16, 2021

@BptGrm The errors about missing #include <cublas_v2.h> are when you don't have cuda installed on your system, or if it is installed then the location of the headers is not in the path environment variable (eg C_INCLUDE_PATH).

@1359347500cwc Your error is about missing #include "scs_matrix.h" which is very strange as that should be included with the scs files. Does it only happen when trying to build the gpu version?

@b-grimaud
Copy link

@BptGrm The errors about missing #include <cublas_v2.h> are when you don't have cuda installed on your system, or if it is installed then the location of the headers is not in the path environment variable (eg C_INCLUDE_PATH).

Seems obvious now that you mention it, sorry about that.
On that matter, is building scs_gpu from source compatible with a conda-installed CUDA, or do I need to have a "standalone" install on the computer ?

@bodono
Copy link
Member

bodono commented Nov 18, 2021

I think it should be compatible so long as you tell it where the header files and the cuda binaries are. If you run into problems just open an issue.

@liuzhonglincc
Copy link

@BptGrm The errors about missing #include <cublas_v2.h> are when you don't have cuda installed on your system, or if it is installed then the location of the headers is not in the path environment variable (eg C_INCLUDE_PATH).

Seems obvious now that you mention it, sorry about that. On that matter, is building scs_gpu from source compatible with a conda-installed CUDA, or do I need to have a "standalone" install on the computer ?

@BptGrm When I execute command: python setup.py install --scs --gpu,The same problem was encountered . Have you finally solved this problem?

@b-grimaud
Copy link

@zhonglinliu123 Make sure you have CUDA installed, in my case it was directly in the conda environment, but I think a standalone install should work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants