jbloomlab / dms_tools2

software for the analysis and visualization of deep mutational scanning data
GNU General Public License v3.0
29 stars 20 forks source link

_cutils.c asks for Python developer header files not present by default #58

Closed JiaGengChang closed 2 years ago

JiaGengChang commented 2 years ago

I ran into an error doing pip install. The error seems to come from the last parameter in main setup subroutine of setup.py, specifically the parameter ext_modules which loads _cutils.c

However, _cutils.c requires python3.6-devel headers such as Python.h - these files are not installed by default in my system.

This is because the --include-dir (or -I) flag searches for Python.h in /usr/include/python3.6m - however, in my IT service in University of Dundee, there is no such file in /usr/include/python3.6m.

To reproduce the error:

  1. create python3.6 virtualenv
  2. activate the virtualenv
  3. git the url
  4. cd into dms_tools2
  5. run pip install -e .

Alternatively (no virtualenv),

  1. git the url
  2. run pip install -e . --user

Thirdly, to narrow down the error,

  1. cd to dms_tools2
  2. get the error by either of above 2 methods
  3. run python setup.py build_ext --inplace

Error logs and output logs when I run either pip command are attached below:

error.log out.log