Giter Site home page Giter Site logo

bokulich-lab / q2-checkm Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 3.0 85 KB

QIIME 2 plugin for assessing the quality of (meta)genomes using CheckM.

License: BSD 3-Clause "New" or "Revised" License

Makefile 0.58% Python 90.19% TeX 3.04% Shell 0.87% CSS 0.16% HTML 5.15%

q2-checkm's People

Contributors

misialq avatar vinzentrisch avatar

Watchers

 avatar  avatar  avatar  avatar

q2-checkm's Issues

BUG: gsl library missing

I followed the installation instructions and tried to run the following:

cd download_here
curl -L -o checkm-db.tar.gz https://data.ace.uq.edu.au/public/CheckM_databases/checkm_data_2015_01_16.tar.gz
mkdir checkm_db
tar -xzf checkm-db.tar.gz -C checkm_db
rm checkm-db.tar.gz
wget https://polybox.ethz.ch/index.php/s/slGyW1uQbyxmyb9/download -O mags.qza
qiime checkm evaluate-bins \
  --i-bins mags.qza \
  --p-db-path ./checkm_db \
  --p-reduced-tree \
  --p-threads 8 \
  --p-pplacer-threads 6 \
  --o-visualization mags.qzv \
  --verbose

I get the following error:

Running external command line application(s). This may print messages to stdout and/or stderr.
The command(s) being run are below. These commands cannot be manually re-run as they will depend on temporary files that no longer exist.

Command: checkm lineage_wf --reduced_tree --threads 7 --pplacer_threads 6 -x fasta /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/qiime2/santiago/data/fd55c63f-10a5-4c5a-827f-3a071bea4c10/data/sample1 /var/fold
ers/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1

[2024-06-28 13:02:48] INFO: CheckM v1.2.3
[2024-06-28 13:02:48] INFO: checkm lineage_wf --reduced_tree --threads 7 --pplacer_threads 6 -x fasta /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/qiime2/santiago/data/fd55c63f-10a5-4c5a-827f-3a071bea4c10/dat
a/sample1 /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1
[2024-06-28 13:02:48] INFO: CheckM data: ./checkm_db
[2024-06-28 13:02:48] INFO: [CheckM - tree] Placing bins in reference genome tree.
[2024-06-28 13:02:48] INFO: Identifying marker genes in 2 bins with 7 threads:
[2024-06-28 13:03:22] INFO: Saving HMM info to file.
[2024-06-28 13:03:22] INFO: Calculating genome statistics for 2 bins with 7 threads:
[2024-06-28 13:03:24] INFO: Extracting marker genes to align.
[2024-06-28 13:03:24] INFO: Parsing HMM hits to marker genes:
    Finished parsing hits for 2 of 2 (100.00%) bins.
[2024-06-28 13:03:24] INFO: Extracting 43 HMMs with 7 threads:
[2024-06-28 13:03:27] INFO: Aligning 43 marker genes with 7 threads:
[2024-06-28 13:03:29] INFO: Reading marker alignment files.
[2024-06-28 13:03:29] INFO: Concatenating alignments.
[2024-06-28 13:03:29] INFO: Placing 2 bins into the genome tree with pplacer (be patient).
dyld[55892]: Library not loaded: /usr/local/lib/libgsl.0.dylib
  Referenced from: <0D61E9B0-4DB5-3D60-99A8-F091685CDB35> /Users/santiago/mambaforge/envs/q2-checkm/bin/pplacer
  Reason: tried: '/usr/local/lib/libgsl.0.dylib' (errno=62), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/libgsl.0.dylib' (no such file), '/usr/local/lib/libgsl.0.dylib' (errno=62), '/usr/lib/libgsl.0.dyli
b' (no such file, not in dyld cache)
sh: line 1: 55892 Abort trap: 6           pplacer -j 6 -c ./checkm_db/genome_tree/genome_tree_reduced.refpkg -o /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1/storage/tree/concatenat
ed.pplacer.json /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1/storage/tree/concatenated.fasta > /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1/storage/
tree/pplacer.out
[2024-06-28 13:03:29] ERROR: pplacer exited with code: 34304

  Controlled exit resulting from an unrecoverable error or warning.
Traceback (most recent call last):
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/q2cli/commands.py", line 520, in __call__
    results = self._execute_action(
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/q2cli/commands.py", line 581, in _execute_action
    results = action(**arguments)
  File "<decorator-gen-26>", line 2, in evaluate_bins
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/qiime2/sdk/action.py", line 342, in bound_callable
    outputs = self._callable_executor_(
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/qiime2/sdk/action.py", line 615, in _callable_executor_
    ret_val = self._callable(output_dir=temp_dir, **view_args)
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/q2_checkm/checkm.py", line 272, in evaluate_bins
    reports = _evaluate_bins(results_dir, bins, db_path, common_args)
  File "/Users/santiago/mambaforge/envs/q2-checkm/lib/python3.8/site-packages/q2_checkm/checkm.py", line 65, in _evaluate_bins
    raise FileNotFoundError(f"CheckM stats file {stats_fp} could not be found.")
FileNotFoundError: CheckM stats file /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1/storage/bin_stats_ext.tsv could not be found.

Plugin error from checkm:

  CheckM stats file /var/folders/6p/vfbtsnkn1x738nqkqzcprf5w0000gn/T/tmpolikwe3x/results/sample1/storage/bin_stats_ext.tsv could not be found.

See above for debug info.

Apparently, I was missing the gsl library. So I brew install gsl it. The installed version was 2.8 and pplacer was still looking explicitly for version 0 (which is not even available in the ftp server, the earliest available is 1.0). So I cheated and made a file /usr/local/lib/libgsl.0.dylib with a symlink to /usr/local/lib/libgsl.28.dylib and then it worked โœ… ๐Ÿฅณ .

Just a workaround, I guess we need to find a way to install gsl.v0

CheckM results are being saved into a (potentially) read-only directory

That happens in at least two places:

_zip_checkm_plots(
plots_per_sample, os.path.join(TEMPLATES, "checkm", "checkm_plots.zip")
)

and
checkm_results.to_csv(
os.path.join(TEMPLATES, "checkm", "results.tsv"),
sep="\t",
index=False,
)

This can lead to issues when the TEMPLATES directory is in a read-only location, eg. when executing from within a Singularity container. The results could be directly written to the output_dir instead.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.