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

Issues about the installation of dependence #27

Closed
Jiulong-Zhao opened this issue Feb 23, 2022 · 5 comments
Closed

Issues about the installation of dependence #27

Jiulong-Zhao opened this issue Feb 23, 2022 · 5 comments

Comments

@Jiulong-Zhao
Copy link

Hi developer,

A very exciting work to develop this software to bin the phage genomes!
Unfortunately, I meet some problems in starting to install the software.
It seems like the Prerequisites you provided are conflicting and can not be installed simultaneously.

The errors log is as follows:

 (base) [mcs@mcs1 soft]$ conda create -n phamb snakemake pygraphviz python=3.8 cython scikit-learn==0.21.3
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: - 
Found conflicts! Looking for incompatible packages.                                                                                                                                                              failed                                                                                                                                                                                                             / 

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package pygraphviz conflicts for:
pygraphviz
snakemake -> pygraphviz[version='>=1.5']

Package system conflicts for:
pygraphviz -> python=3.4 -> system==5.8
snakemake -> python=3.4 -> system==5.8
cython -> python[version='>=2.7,<2.8.0a0'] -> system==5.8

Package _libgcc_mutex conflicts for:
scikit-learn==0.21.3 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex[version='*|0.1',build=main]
cython -> libgcc-ng[version='>=7.5.0'] -> _libgcc_mutex[version='*|0.1',build=main]
pygraphviz -> libgcc-ng[version='>=7.5.0'] -> _libgcc_mutex[version='*|0.1',build=main]
python=3.8 -> libgcc-ng[version='>=7.5.0'] -> _libgcc_mutex[version='*|0.1',build=main]

Package setuptools conflicts for:
scikit-learn==0.21.3 -> joblib[version='>=0.11'] -> setuptools
snakemake -> dropbox[version='>=7.2.1'] -> setuptools
cython -> setuptools
python=3.8 -> pip -> setuptools

Package ca-certificates conflicts for:
cython -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates
python=3.8 -> openssl[version='>=1.1.1l,<1.1.2a'] -> ca-certificates
pygraphviz -> python=2.7 -> ca-certificates

Package numpy conflicts for:
snakemake -> networkx[version='>=2.0'] -> numpy[version='1.10.*|1.11.*|1.12.*|1.13.*|>=1.11.3,<2.0a0|>=1.12.1,<2.0a0|>=1.13.3,<2.0a0|>=1.14.6,<2.0a0|>=1.15.4,<2.0a0|>=1.16.6,<2.0a0|>=1.19|>=1.19.2,<2.0a0|>=1.21.2,<2.0a0|>=1.20.3,<2.0a0|>=1.20.2,<2.0a0|>=1.9.3,<2.0a0|>=1.9|>=1.12|1.9.*|1.8.*|1.7.*|1.6.*']
scikit-learn==0.21.3 -> numpy[version='>=1.11.3,<2.0a0']
scikit-learn==0.21.3 -> scipy -> numpy[version='1.10.*|1.11.*|1.12.*|1.13.*|>=1.14.6,<2.0a0|>=1.16.6,<2.0a0|>=1.21.2,<2.0a0|>=1.15.1,<2.0a0|>=1.9.3,<2.0a0|1.9.*|1.8.*|1.7.*|1.6.*|1.5.*']

Package python conflicts for:
snakemake -> python[version='3.4.*|3.5.*|3.6.*|>=3.5,<3.6.0a0|>=3.6,<3.7.0a0']
scikit-learn==0.21.3 -> python[version='>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']
python=3.8
scikit-learn==0.21.3 -> joblib[version='>=0.11'] -> python[version='2.6.*|2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.6|>=3.7|>=3.5,<3.6.0a0|>=3.10,<3.11.0a0|>=3.8,<3.9.0a0|>=3.9,<3.10.0a0|3.4.*|3.3.*']
snakemake -> boto3 -> python[version='2.6.*|2.7.*|>=2.7,<2.8.0a0|>=3.6|>=3.7,<3.8.0a0|>=3.10,<3.11.0a0|>=3.8,<3.9.0a0|>=3.9,<3.10.0a0|3.3.*|>=3.7|>=3.5|>=3.7.1,<3.8.0a0|>=3.3|>=3']
cython -> python[version='2.6.*|2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0|>=3.9,<3.10.0a0|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|3.4.*|3.3.*']

Package certifi conflicts for:
snakemake -> requests[version='>=2.8.1'] -> certifi[version='>=2017.4.17']
cython -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']

Package bzip2 conflicts for:
pygraphviz -> python[version='>=3.10,<3.11.0a0'] -> bzip2[version='>=1.0.8,<2.0a0']
cython -> python[version='>=3.10,<3.11.0a0'] -> bzip2[version='>=1.0.8,<2.0a0']The following specifications were found to be incompatible with your system:

  - feature:/linux-64::__glibc==2.17=0
  - feature:|@/linux-64::__glibc==2.17=0
  - cython -> libgcc-ng[version='>=7.5.0'] -> __glibc[version='>=2.17']
  - python=3.8 -> libgcc-ng[version='>=7.5.0'] -> __glibc[version='>=2.17']
  - scikit-learn==0.21.3 -> libgcc-ng[version='>=7.3.0'] -> __glibc[version='>=2.17']

Your installed version is: 2.17

I also tried to install these packages one at a time and I also failed.

So, maybe the versions of these packages you provided are wrong?

Hope you can help me solve this issue!

Thank you so much!

Looking forward to your reply!

Jiulong

@joacjo
Copy link
Collaborator

joacjo commented Feb 23, 2022

Hi Jiulong

Thank you for your interest in the method. I did some experimentation and experienced the same conflicts in the conda installation as you present here. Seems like the required scikit version is not compatible with Python v. 3.8.

Try to give this one a go, python 3.6 should not result in the same conflicts with scikit-learn and worked stable before.
conda create -n phamb python=3.6 cython scikit-learn==0.21.3 snakemake pygraphviz

Let me know if this works out.

Best,
Joachim

@joacjo joacjo pinned this issue Feb 23, 2022
@enryH
Copy link
Member

enryH commented Feb 23, 2022

And I check now with python=3.7 on Windows10, it does also seem to work:

conda create -c defaults -c conda-forge -c bioconda -n phamb snakemake pygraphviz python=3.7 cython scikit-learn=0.21.3

I added explicitly the list of anaconda channels in search order: -c defaults -c conda-forge -c bioconda

@Jiulong-Zhao
Copy link
Author

@joacjo @enryH Thanks for your kindly help!
Yeah, the installation of python=3.6 can work!
conda create -n phamb python=3.6 cython scikit-learn==0.21.3 snakemake pygraphviz
It can work, while "python=3.7" can not work in my CentOS 7.6 system.

Thanks again!

By the way, to my understanding, is this phamb workflow used to identify viral MAGs after binning by Vamb to obtain miscellaneous MAGs?

@enryH
Copy link
Member

enryH commented Feb 24, 2022

As python 3.6 is out of live, I guess it will be good to see if this can be updated..

@joacjo
Copy link
Collaborator

joacjo commented Feb 24, 2022

@joacjo @enryH Thanks for your kindly help! Yeah, the installation of python=3.6 can work! conda create -n phamb python=3.6 cython scikit-learn==0.21.3 snakemake pygraphviz It can work, while "python=3.7" can not work in my CentOS 7.6 system.

Thanks again!

By the way, to my understanding, is this phamb workflow used to identify viral MAGs after binning by Vamb to obtain miscellaneous MAGs?

Great it worked for you Jiulong! I will update the dependency for python 3.6, for now.
As Henry points out, python 3.6 is getting outdated, so we will have to prepare the method for a more recent version of Python.

To your question, Yes phamb workflow requires Vamb clusters.tsv and is optimised for that binner.
So you will need to run Vamb on a metagenomic dataset in order to employ this method.

Wish you all the best with your research!

@joacjo joacjo closed this as completed Feb 24, 2022
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

3 participants