monagrland / MB_Pipeline

Metabarcoding Pipeline for Illumina Sequencing Data
GNU Affero General Public License v3.0
1 stars 1 forks source link

pip dependency in Conda env spec causes problem for Docker build? #23

Closed kbseah closed 7 months ago

kbseah commented 8 months ago

Tried to build Docker image after containerzing workflow with snakemake [...] --containerize > Dockerfile

However docker build -t mb-pipeline . command fails when trying to build environment containing pip package pytransaln, during gcc compilation of its pyhmmer dependency.

Submitted PR for Bioconda recipe for pytransaln, which may circumvent this issue

kbseah commented 8 months ago

Error message for failed gcc command in docker build:

128.9       checking whether function 'erfc' is available... no
128.9       generating build/temp.linux-x86_64-cpython-312/libdivsufsort.a from vendor/hmmer/libdivsufsort/divsufsort.c
128.9       generating build/temp.linux-x86_64-cpython-312/vendor/hmmer/libdivsufsort/divsufsort.o from vendor/hmmer/libdivsufsort/divsufsort.c
128.9       creating build/temp.linux-x86_64-cpython-312/vendor
128.9       creating build/temp.linux-x86_64-cpython-312/vendor/hmmer
128.9       creating build/temp.linux-x86_64-cpython-312/vendor/hmmer/libdivsufsort
128.9       gcc -pthread -B /conda-envs/a158841b32a4527881b8fcced1235c5f/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /conda-envs/a158841b32a4527881b8fcced1235c5f/include -fPIC -O2 -isystem /conda-envs/a158841b32a4527881b8fcced1235c5f/include -fPIC -Ibuild/temp.linux-x86_64-cpython-312 -I/conda-envs/a158841b32a4527881b8fcced1235c5f/include/python3.12 -c vendor/hmmer/libdivsufsort/divsufsort.c -o build/temp.linux-x86_64-cpython-312/vendor/hmmer/libdivsufsort/divsufsort.o
128.9       error: command 'gcc' failed: No such file or directory
128.9       [end of output]
128.9
128.9   note: This error originates from a subprocess, and is likely not a problem with pip.
128.9   ERROR: Failed building wheel for pyhmmer
128.9 ERROR: Could not build wheels for pyhmmer, which is required to install pyproject.toml-based projects
128.9
128.9
128.9 failed
128.9
128.9 CondaEnvException: Pip failed