CAMI-challenge/CAMISIM

[MetagenomeSimulationPipeline] Empty bam file list in line 106

Louis-MG opened this issue · 8 comments

Hello ! When trying to run the test mini_config.ini, i encountered this error (already mentioned but there was no follow-up):

/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
/mnt/software/bioinfo/samtools-1.9/samtools: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
2023-01-06 15:28:55 INFO: [MetagenomeSimulationPipeline] Generate gold standard assembly
2023-01-06 15:28:55 INFO: [MetadataReader 16932406861] Reading file: '/mnt/projects_tn04/KMER_analysis/tools/CAMISIM/out/internal/genome_locations.tsv'
2023-01-06 15:28:55 ERROR: [MetagenomeSimulationPipeline] Empty bam file list in line 106
2023-01-06 15:28:55 INFO: [MetagenomeSimulationPipeline] Metagenome simulation aborted

I used the default config file. and the following conda environment :

name: camisim
channels:
- default
- conda-forge
- bioconda
dependencies:
  - python=3.8.*
  - perl
  - ncurses
  - perl-libxml-perl
  - pip
  - pip:
    - numpy
    - ete3
    - biom-format
    - biopython
    - numpy
    - matplotlib
    - joblib
    - scikit-learn

Seeing there were problems about ncurses in conda, i tried the conda-forge version as well, and the R channel too, to no avail. I then tried to link the samtools-1.9 of my lab's server, did not work either, still can't find ncurses. That might be an issue with conda more than CAMISIM, i'll retry if the admin can install ncurses with apt or if "ncursing" enough in front of the screen finally makes it work.

Hey, yeah this error keeps popping up and unfortunately it is hard for me to reproduce/change something on the CAMISIM end. In this case it might be due to the fact that you use ncurses in your environment but samtools requires ncursesw, so you could try changing your environment accordingly?
I've tried the "ncursing" in front of the screen and unfortunately it did not work for me ;)

We installed libncursesw5-dev, still isn't working (with samtools 1.3 and 1.9). Same error message. Samtools does not work as a standalone, the problem is definitely on this side.

That is unfortunate. If you are able to get some version of samtools to run, you could try to link that version to CAMISIM using the samtools option. CAMISIM has not been tested on these other versions though, so if some command line arguments changed then it becomes difficult

We found a way to make it work, installing ncorses before samtools in the conda environment. The order must mess with the versions. Or soemthing else, anyway it works.
Final conda :

name: camisim
channels:
- conda-forge
- bioconda
- default
dependencies:
  - python=3.8.*
  - perl
  - ncurses
  - perl-libxml-perl
  - samtools
  - pip
  - pip:
    - numpy
    - ete3
    - biom-format
    - biopython
    - numpy
    - matplotlib
    - joblib
    - scikit-learn

We found a way to make it work, installing ncorses before samtools in the conda environment. The order must mess with the versions. Or soemthing else, anyway it works. Final conda :

name: camisim
channels:
- conda-forge
- bioconda
- default
dependencies:
  - python=3.8.*
  - perl
  - ncurses
  - perl-libxml-perl
  - samtools
  - pip
  - pip:
    - numpy
    - ete3
    - biom-format
    - biopython
    - numpy
    - matplotlib
    - joblib
    - scikit-learn

Hi! I am experiencing the same problem. Could you tell me how you managed to install ncurses? I am using Ubuntu 23.10 and I can't make it work

@TakacsBertalan Sorry I didnt get any notification. I cannot remember exactly what I did, but here is the .yaml of the environment :

name: camisim
channels:
  - bioconda
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=2_gnu
  - bzip2=1.0.8=h7f98852_4
  - c-ares=1.18.1=h7f98852_0
  - ca-certificates=2022.12.7=ha878542_0
  - curl=7.87.0=hdc1c0ab_0
  - expat=2.5.0=h27087fc_0
  - keyutils=1.6.1=h166bdaf_0
  - krb5=1.20.1=h81ceb04_0
  - ld_impl_linux-64=2.39=hcc3a1bd_1
  - libcurl=7.87.0=hdc1c0ab_0
  - libedit=3.1.20191231=he28a2e2_2
  - libev=4.33=h516909a_1
  - libffi=3.4.2=h7f98852_5
  - libgcc-ng=12.2.0=h65d4601_19
  - libgomp=12.2.0=h65d4601_19
  - libnghttp2=1.51.0=hff17c54_0
  - libnsl=2.0.0=h7f98852_0
  - libsqlite=3.40.0=h753d276_0
  - libssh2=1.10.0=hf14f497_3
  - libstdcxx-ng=12.2.0=h46fd767_19
  - libuuid=2.32.1=h7f98852_1000
  - libzlib=1.2.13=h166bdaf_4
  - ncurses=6.3=h27087fc_1
  - openssl=3.0.7=h0b41bf4_1
  - perl=5.32.1=2_h7f98852_perl5
  - perl-libxml-perl=0.08=pl5321hdfd78af_3
  - perl-xml-parser=2.44_01=pl5321hc3e0081_1003
  - pip=22.3.1=pyhd8ed1ab_0
  - python=3.8.15=h4a9ceb5_0_cpython
  - readline=8.1.2=h0f457ee_0
  - samtools=1.6=h3f2fef4_8
  - setuptools=66.1.1=pyhd8ed1ab_0
  - tk=8.6.12=h27826a3_0
  - wheel=0.38.4=pyhd8ed1ab_0
  - xz=5.2.6=h166bdaf_0
  - zlib=1.2.13=h166bdaf_4
  - pip:
      - appdirs==1.4.4
      - biom-format==2.1.14
      - biopython==1.80
      - certifi==2022.12.7
      - charset-normalizer==3.0.1
      - click==8.1.3
      - contourpy==1.0.7
      - cycler==0.11.0
      - cython==0.29.33
      - ete3==3.1.2
      - fonttools==4.38.0
      - h5py==3.8.0
      - idna==3.4
      - joblib==1.2.0
      - kiwisolver==1.4.4
      - matplotlib==3.6.3
      - ncbi-genome-download==0.3.1
      - numpy==1.24.1
      - packaging==23.0
      - pandas==1.5.3
      - pillow==9.4.0
      - pyparsing==3.0.9
      - python-dateutil==2.8.2
      - pytz==2022.7.1
      - requests==2.28.2
      - scikit-learn==1.2.0
      - scipy==1.10.0
      - six==1.16.0
      - threadpoolctl==3.1.0
      - tqdm==4.64.1
      - urllib3==1.26.14

I also commented the faulty lines in the python script of camisim directly to avoid the error. Which works !

Hi, could you please let me know which lines you commented and which script? I tried creating an environment with the yaml file you showed but it did not work.

@SMontesinos lines 102 to 122.