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

mosdepth executable is X86 format in the wf-alignment ARM container #38

Open
AmedeeBulle opened this issue Dec 17, 2024 · 3 comments
Open

Comments

@AmedeeBulle
Copy link

Operating System

Other Linux (please specify below)

Other Linux

OL9

Workflow Version

v1.2.2-g244817a

Workflow Execution

Command line (Local)

Other workflow execution

No response

EPI2ME Version

No response

CLI command run

Sample command line from the README:

nextflow run epi2me-labs/wf-alignment \                                                                                     
        --fastq 'wf-alignment-demo/fastq' \                                                                                                            
        --references 'wf-alignment-demo/references' \                      
        -profile standard      

Workflow Execution - CLI Execution Profile

standard (default)

What happened?

Running on ARM system, the workflow encounters:

/home/epi2melabs/conda/bin/mosdepth: cannot execute binary file: Exec format error

Looking in the container, all executables are in ARM format except mosdepth which is in X86 format:

$ file mosdepth 
mosdepth: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, with debug_info, not stripped

Relevant log output

ERROR ~ Error executing process > 'pipeline:getVersions'

Caused by:                            
  Process `pipeline:getVersions` terminated with an error exit status (126) 


Command executed:

  python --version | tr -s ' ' ',' | tr '[:upper:]' '[:lower:]' > versions.txt
  seqkit version | sed 's/ /,/' >> versions.txt
  minimap2 --version | sed 's/^/minimap2,/' >> versions.txt
  samtools --version | (head -n 1 && exit 0) | sed 's/ /,/' >> versions.txt 
  fastcat --version | sed 's/^/fastcat,/' >> versions.txt
  mosdepth --version | sed 's/ /,/' >> versions.txt
  ezcharts --version | sed 's/ /,/' >> versions.txt
  python -c "import pysam; print(f'pysam,{pysam.__version__}')" >> versions.txt
  bgzip --version | head -n1 | sed -E 's/(.*) /\1,/' >> versions.txt

Command exit status:
  126                                                                       

Command output:                       
  (empty)

Command error:
  .command.sh: line 7: /home/epi2melabs/conda/bin/mosdepth: cannot execute binary file: Exec format error

Work dir:
  /srv/ont/work/8d/3d83a0284c168a43650bfdb3cb1b5c

Container:
  ontresearch/wf-alignment:shaa9faef16822c5aa48366a4c45b401c9233a6c0f7

Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line

 -- Check '.nextflow.log' file for details

Application activity log entry

No response

Were you able to successfully run the latest version of the workflow with the demo data?

no

Other demo data information

No response

@SamStudio8
Copy link
Member

We do claim this workflow supports ARM so that looks like a bug to me! Thanks for the report, we'll take a look.

@AmedeeBulle
Copy link
Author

Thanks

FYI, in this container, all the the executables in the /home/epi2melabs/conda/bin directory are ARM aarch64 except mosdepth which is x86-64 ...

@cjw85
Copy link
Contributor

cjw85 commented Dec 17, 2024

The issue here appears to be that at the time we built the container bioconda contained a "noarch" package. This is what's been installed. The noarch tag on that build is erroneous. We will need to build a new container with a correctly compiled aarch pacakge.

Our apologies, we have some misconfiguration in our CI testing that has allowed the workflow to be tagged as ARM compatible but not tested as such.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants