Skip to content

RUST compiler? #163

Description

@michaelmather15

Setup

I am reporting a problem with GSEApy version, Python version, and operating
system as follows:

import sys; print(sys.version)
import platform; print(platform.python_implementation()); print(platform.platform())
import gseapy; print(gseapy.__version__)

python=v3.10.5
3.8.8 | packaged by conda-forge | (default, Feb 20 2021, 16:22:27)
[GCC 9.3.0]
CPython
Linux-4.15.0-112-generic-x86_64-with-glibc2.10

Expected behaviour

Installs gseapy

Actual behaviour

Simply running: !pip install gseapy In Jupyer (python kernal), leads to:

Collecting gseapy
Using cached gseapy-0.12.0.tar.gz (2.3 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting bioservices
Using cached bioservices-1.10.1-py3-none-any.whl
Requirement already satisfied: matplotlib in /opt/conda/lib/python3.8/site-packages (from gseapy) (3.3.4)
Requirement already satisfied: requests in /opt/conda/lib/python3.8/site-packages (from gseapy) (2.25.1)
Requirement already satisfied: joblib in /opt/conda/lib/python3.8/site-packages (from gseapy) (1.0.1)
Requirement already satisfied: numpy>=1.13.0 in /opt/conda/lib/python3.8/site-packages (from gseapy) (1.20.1)
Requirement already satisfied: pandas in /opt/conda/lib/python3.8/site-packages (from gseapy) (1.2.3)
Requirement already satisfied: scipy in /opt/conda/lib/python3.8/site-packages (from gseapy) (1.6.1)
Collecting lxml
Using cached lxml-4.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (6.9 MB)
Collecting beautifulsoup4
Using cached beautifulsoup4-4.11.1-py3-none-any.whl (128 kB)
Collecting suds-community
Using cached suds_community-1.1.2-py3-none-any.whl (144 kB)
Collecting easydev>=0.9.36
Using cached easydev-0.12.0-py3-none-any.whl
Collecting grequests
Using cached grequests-0.6.0-py3-none-any.whl (5.2 kB)
Collecting requests-cache
Using cached requests_cache-0.9.5-py3-none-any.whl (47 kB)
Collecting wrapt
Using cached wrapt-1.14.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (81 kB)
Collecting appdirs
Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting colorlog
Using cached colorlog-6.6.0-py2.py3-none-any.whl (11 kB)
Collecting xmltodict
Using cached xmltodict-0.13.0-py2.py3-none-any.whl (10.0 kB)
Requirement already satisfied: kiwisolver>=1.0.1 in /opt/conda/lib/python3.8/site-packages (from matplotlib->gseapy) (1.3.1)
Requirement already satisfied: pillow>=6.2.0 in /opt/conda/lib/python3.8/site-packages (from matplotlib->gseapy) (8.1.2)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.3 in /opt/conda/lib/python3.8/site-packages (from matplotlib->gseapy) (2.4.7)
Requirement already satisfied: python-dateutil>=2.1 in /opt/conda/lib/python3.8/site-packages (from matplotlib->gseapy) (2.8.1)
Requirement already satisfied: cycler>=0.10 in /opt/conda/lib/python3.8/site-packages (from matplotlib->gseapy) (0.10.0)
Requirement already satisfied: pytz>=2017.3 in /opt/conda/lib/python3.8/site-packages (from pandas->gseapy) (2021.1)
Requirement already satisfied: idna<3,>=2.5 in /opt/conda/lib/python3.8/site-packages (from requests->gseapy) (2.10)
Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/lib/python3.8/site-packages (from requests->gseapy) (2020.12.5)
Requirement already satisfied: chardet<5,>=3.0.2 in /opt/conda/lib/python3.8/site-packages (from requests->gseapy) (4.0.0)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /opt/conda/lib/python3.8/site-packages (from requests->gseapy) (1.26.3)
Requirement already satisfied: six in /opt/conda/lib/python3.8/site-packages (from cycler>=0.10->matplotlib->gseapy) (1.15.0)
Requirement already satisfied: pexpect in /opt/conda/lib/python3.8/site-packages (from easydev>=0.9.36->bioservices->gseapy) (4.8.0)
Requirement already satisfied: colorama in /opt/conda/lib/python3.8/site-packages (from easydev>=0.9.36->bioservices->gseapy) (0.4.4)
Collecting soupsieve>1.2
Using cached soupsieve-2.3.2.post1-py3-none-any.whl (37 kB)
Collecting gevent
Using cached gevent-21.12.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (6.5 MB)
Collecting cattrs<=22.2,>=1.8
Using cached cattrs-22.1.0-py3-none-any.whl (33 kB)
Collecting attrs<22.0,>=21.2
Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Collecting url-normalize<2.0,>=1.4
Using cached url_normalize-1.4.3-py2.py3-none-any.whl (6.8 kB)
Collecting exceptiongroup
Using cached exceptiongroup-1.0.0rc8-py3-none-any.whl (11 kB)
Collecting zope.interface
Using cached zope.interface-5.4.0-cp38-cp38-manylinux2010_x86_64.whl (259 kB)
Collecting greenlet<2.0,>=1.1.0
Using cached greenlet-1.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (156 kB)
Requirement already satisfied: setuptools in /opt/conda/lib/python3.8/site-packages (from gevent->grequests->bioservices->gseapy) (65.0.1)
Collecting zope.event
Using cached zope.event-4.5.0-py2.py3-none-any.whl (6.8 kB)
Requirement already satisfied: ptyprocess>=0.5 in /opt/conda/lib/python3.8/site-packages (from pexpect->easydev>=0.9.36->bioservices->gseapy) (0.7.0)
Building wheels for collected packages: gseapy
Building wheel for gseapy (pyproject.toml) ... error
error: subprocess-exited-with-error

× Building wheel for gseapy (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [31 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-38
creating build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/gsea.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/plot.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/algorithm.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/parser.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/init.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/base.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/main.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/utils.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/biomart.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/stats.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/great.py -> build/lib.linux-x86_64-cpython-38/gseapy
copying gseapy/enrichr.py -> build/lib.linux-x86_64-cpython-38/gseapy
running build_ext
running build_rust
error: can't find Rust compiler

  If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.
  
  To update pip, run:
  
      pip install --upgrade pip
  
  and then retry package installation.
  
  If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs/) is the recommended way to download and update the Rust compiler toolchain.
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for gseapy
Failed to build gseapy
ERROR: Could not build wheels for gseapy, which is required to install pyproject.toml-based projects

Steps to reproduce

As above. I've tried to install rust, but no success!
Any help much appreciated.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions