Я использую snakemake версии 5.13.0 в среде fre sh conda. Я хочу запустить змейку внутри экрана (я подключаюсь к RHP C). Мой конвейер работает нормально на RHP C, но не внутри экрана. Я использую обертки github версии 0.51.0. Некоторые выдают ошибку сразу при запуске правила (например, cutadapt и bwa / samse), другие работают внутри экрана (например, fastq c и bwa / aln). Сообщение об ошибке:
RuleException:
CalledProcessError in line 26 of <>/rules/fastq.smk:
Command 'source <>/anaconda3/bin/activate '<>/.snakemake/conda/adcaa278'; set -euo pipefail; python <>/.snakemake/scripts/tmp5lehgfn3.wrapper.py' returned non-zero exit status 1.
- Первая строка работает: source / <> / anaconda3 / bin / activ '/<>/.snakemake/conda/adcaa278'. Он активирует среду.
- Вторая строка не выдает ошибку: set -euo pipefail.
- С третьей строкой: python <> /. Snakemake / scripts / tmp5lehgfn3.wrapper.py '. Мой экран заканчивается и не может быть возобновлен.
С оболочкой cutadapt. Я также получаю эту ошибку:
Traceback (most recent call last):
File "/<>/.snakemake/scripts/tmpwzmtyh5y.wrapper.py", line 3, in <module>
emake-wrappers/raw/0.51.0/bio/cutadapt/seq\xe3ub.'); from snakemake.logging import logger; logger.printshellcmds = False; __real_file__ = __file__; __file__ = '/<>/https:/github.com/snakemake/snakemake-wrappers/raw/0.51.0/bio/cutadapt/se/wrapper.py';
File "/<>/.linuxbrew/Cellar/python/2.7.11/lib/python2.7/pickle.py", line 1388, in loads
return Unpickler(file).load()
File "/<>/.linuxbrew/Cellar/python/2.7.11/lib/python2.7/pickle.py", line 864, in load
dispatch[key](self)
File "/<>/.linuxbrew/Cellar/python/2.7.11/lib/python2.7/pickle.py", line 892, in load_proto
raise ValueError, "unsupported pickle protocol: %d" % proto
ValueError: unsupported pickle protocol: 3
Мой коллега помог мне. Оказывается, у меня на экране другая переменная $ PATH, чем за ее пределами. Внутри моего экрана он назывался моим linuxbrew python вместо моего conda python, в то время как за пределами моего экрана порядок в моем $ PATH был наоборот.