MrBayes
MrBayes copied to clipboard
MrBayes installed through conda not working on Slurm server
What is the current observed behaviour?
While working on a server that utilises Slurm, I tried installing mrbayes through conda ( https://anaconda.org/bioconda/mrbayes ) and got different errors.
1) Installing it by simply typing "conda install -c bioconda mrbayes " does install a functioning version of MrBayes. The parallel version is also installed and can be called with 'mb-mpi' but does not work. Instead it print out this long message:
**""" The application appears to have been direct launched using "srun", but OMPI was not built with SLURM's PMI support and therefore cannot execute. There are several options for building PMI support under SLURM, depending upon the SLURM version you are using:
version 16.05 or later: you can use SLURM's PMIx support. This requires that you configure and build SLURM --with-pmix.
Versions earlier than 16.05: you must use either SLURM's PMI-1 or PMI-2 support. SLURM builds PMI-1 by default, or you can manually install PMI-2. You must then build Open MPI using --with-pmi pointing to the SLURM PMI library location.
Please configure as appropriate and try again.
*** An error occurred in MPI_Init *** on a NULL communicator *** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort, *** and potentially your MPI job) """**
The conda version also installs some pretty old versions of prerequisites, e.g. python v3.6.8 , openmpi v4.0.2
2) Installing it along with another tool (e.g. conda install -c bioconda -c conda-forge snakemake mrbayes) does install up to date prerequisites e.g. python v3.11.4 , but the basic MrBayes is now not working. When you try to execute with 'mb' you get this error:
Illegal instruction (core dumped)
3) Installing an older version of MrBayes (e.g. conda install -c bioconda -c conda-forge mrbayes=3.2.6) also installs a non-functioning version of MrBayes, this time the error message is different:
mb: error while loading shared libraries: libhmsbeagle.so.1: cannot open shared object file: No such file or directory
I reproduced the above on 2 different Slurm servers. I also tried it on a non-Slurm server and MrBayes was working fine, including the parallel version!
What is the environment that you run MrBayes in?
- OS: Red Hat Enterprise Linux 8 / Kernel Linux 4.18 &
- OS: SUSE Linux Enterprise Server 15 SP1/ Kernel Linux 4.12.14
- Version of MrBayes: 3.2.7 & 3.2.6 (Conda installation)
@johnpatramanis I has the same issue, Do you solve it? Thanks Yanpeng
Good day, Unfortunately I did not 'solve' the issue, as I never got the conda version of MrBayes to work. I haven't checked since the last post here, if anything has changed in the conda version of MrBayes.
What did work for me, was manually downloading and installing MrBayes the original way from their link, outside of conda. I've also started using RevBayes which is an alternative to MrBayes.
Hope this helps!
Installing mrbayes h760cbc2_0 build worked for me:
conda install mrbayes=3.2.7=h760cbc2_0 -c bioconda
edit: I also installed this version of BEAGLE
conda install beagle-lib=3.1.2=h9f5acd7_4 -c bioconda
Hi there, I am using a SLURM server and tried installing mrbayes h760cbc2_0 and ran into an issue, the build requires openmpi >= 4.0.2...