aertslab / scenicplus

SCENIC+ is a python package to build gene regulatory networks (GRNs) using combined or separate single-cell gene expression (scRNA-seq) and single-cell chromatin accessibility (scATAC-seq) data.
Other
177 stars 28 forks source link

Installation issue (scenicplus and pyscenic conflicting dependencies) #354

Closed Daliya-K closed 5 months ago

Daliya-K commented 5 months ago

Hi, Thank you for the great package!

I am trying to install scenicplus on an Ubuntu desktop using the following code:

Code conda create --name scenicplus python=3.8 conda activate scenicplus git clone https://github.com/aertslab/scenicplus cd scenicplus pip install -e .

Error

× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [4 lines of output]
Requirement already satisfied: numpy>=1.17 in /tmp/pip-build-env-w55f15aj/overlay/lib/python3.8/site-packages (1.24.4)
error in MACS2 setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers; Expected end or semicolon (after name and no valid version specifier)
numpy>=>=1.17

So I followed the instructions from https://github.com/aertslab/scenicplus/issues/101:

Code cd .. wget https://github.com/macs3-project/MACS/archive/refs/tags/v2.2.7.1.tar.gz -O MACS.tar.gz tar -xvf MACS.tar.gz cd MACS-2.2.7.1 sed -i 's/install_requires = \[f"numpy>={numpy_requires}",\]/install_requires = \[f"numpy{numpy_requires}",\]/' setup.py pip install -e .

Error

Error compiling Cython file: crick_right = right_sum(crick, search_start, window_size) wtd_list = np.zeros( search_end - search_start + 1, dtype="float32") i = 0 for j in range(search_start, search_end+1): wtd_list[i] = max((2 (watson_left crick_right)**0.5 - watson_right - crick_left),0) # minimum score is 0

Then I tried to install MACS2 with pip, which ran successfully pip install MACS2

Successfully installed Cython-0.29.37 MACS2-2.2.9.1 numpy-1.24.4

But then, when I tried to install scenicplus again, I still got an error

Code

cd scenicplus pip install -e .

Error

ERROR: Cannot install scenicplus and scenicplus==1.0.1.dev11+gf1756c1 because these package versions have conflicting dependencies. The conflict is caused by: scenicplus 1.0.1.dev11+gf1756c1 depends on ctxcore pyscenic 0.12.1+8.gd2309fe depends on ctxcore>=0.2.0

I have also tried the isntallation using Docker/Singularity, but still no success:

Code git clone https://github.com/aertslab/pycisTopic.git git clone https://github.com/aertslab/pycistarget.git git clone https://github.com/aertslab/scenicplus.git podman login docker.io podman build -t aertslab/scenicplus:latest . -f scenicplus/Dockerfile

Error

ERROR: Package 'pycistopic' requires a different Python: 3.8.19 not in '~=3.11' [2/2] STEP 1/6: FROM python:3.8-slim AS build-image Error: error building at STEP "RUN cd /tmp/pycisTopic && pip install . && cd .. && rm -rf pycisTopic": error while running runtime: exit status 1

I don't understand this error, as the Python in this environment is 3.8, not 3.11....

Would really appreciate some help with this!

Best, Daliya

SeppeDeWinter commented 5 months ago

Hi @Daliya-K

I would strongly suggest to install the development branch of SCENIC+.

See: https://github.com/aertslab/scenicplus/tree/development

All the best.

Seppe

AnastasiiaKorosteleva commented 5 months ago

Thank you Seppe, development branch of SCENIC+ has successfully installed.

Kind regards, Ana

SeppeDeWinter commented 5 months ago

Great

Good luck with the analysis.

Best,

S