rcedgar / muscle

Multiple sequence and structure alignment with top benchmark scores scalable to thousands of sequences. Generates replicate alignments, enabling assessment of downstream analyses such as trees and predicted structures.
https://drive5.com/muscle
GNU General Public License v3.0
203 stars 22 forks source link

M1 chip support #9

Closed jianshu93 closed 2 years ago

jianshu93 commented 2 years ago

Hello Robert,

Any plans for M1/ARM structure support?

Thanks,

Jianshu

rcedgar commented 2 years ago

I'm not familiar with M1/ARM. The source code is pretty portable and I think gcc does support ARM, did you try compiling it? Might require a couple of gcc command line tweaks, happy to update the Makefile if needed.

colinbrislawn commented 2 years ago

This could also be provided through conda-forge, as they now support osx-arm64.

Could be a good community contribution!

rcedgar commented 2 years ago

@colinbrislawn the rce-dev branch should compile on Mac/M1 now (this from user feedback, I don't have access to an M1 myself).

jianshu93 commented 2 years ago

It seems ok. But when type ./muscl -h , I have the following at the end of the help:

More documentation at: https://drive5.com/muscle muscle(14765,0x100678580) malloc: error for object 0x20a000000000: pointer being freed was not allocated muscle(14765,0x100678580) malloc: set a breakpoint in malloc_error_break to debug Abort trap: 6

Any idea?

Thanks

Jianshu

rcedgar commented 2 years ago

It is probably safe to ignore this error. If you have evidence that this is related to a problem with "real" output such as an alignment, please open a new issue.

rcedgar commented 2 years ago

ARM binary posted for v5.1.

jianshu93 commented 2 years ago

This version looks nice. No

malloc: error for object 0x20a000000000: pointer being freed was not allocated muscle(14765,0x100678580) malloc: set a breakpoint in malloc_error_break to debug

error.

Many Thanks,

Jianshu

akiledal commented 2 years ago

Hi Robert (@rcedgar),

Thanks for starting to provide macos arm64 builds! I noticed that these aren't getting propagated to bioconda, so some tools that use muscle aren't automatically taking advantage of these builds.

rcedgar commented 2 years ago

Thanks for the heads up, but out of scope -- this is an issue for the bioconda package maintainers.

colinbrislawn commented 2 years ago

@akiledal I also wish bioconda supported builds on osx-arm64, but they don't right now...

Until then, I've been building packages on conda-forge because it not only supports osx-arm64, but has over 1300 packages already built!

akiledal commented 2 years ago

Thanks for the responses and sorry to post in the wrong place (I'm not all that familiar with conda package maintenance)--hopefully others might also find these useful at least.

@colinbrislawn I knew some conda packages were available for osx-arm64, but didn't realize none of the bioconda packages were. Hopefully soon!

jianshu93 commented 2 years ago

Has anybody tried this:https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh

I hope it works! But I have not tried it!

Thanks,

Jianshu