Tracker for pre-built dynamic modules and grammars for Apple Silicon (M1)
ubolonton opened this issue · comments
- Update CI to publish artifacts with platform in file names.
-
tsc-dyn
: 48b0679 - Compiled grammars: emacs-tree-sitter/tree-sitter-langs@325b83c
-
- Update CI to publish artifacts for
aarch64-apple-darwin
.-
tsc-dyn
: 48b0679 - Compiled grammars: emacs-tree-sitter/tree-sitter-langs@be048aa
-
- Update binary downloading code to handle different platforms.
This will fix #88. Related: #166 and emacs-tree-sitter/tree-sitter-langs#36
Binaries for Apple Silicon are available starting from elisp-tree-sitter 0.16.1 and tree-sitter-langs 0.10.13.
I'm on an M1 Pro, but I don't seem to be able to fetch the correct prebuilt binary when installing from package.el
Compiling file /Users/wyuenho/.emacs.d/elpa/tree-sitter-20211211.1220/tree-sitter.el at Sat Dec 18 01:30:01 2021
tree-sitter.el:22:1: Error: Module could not be opened: "/Users/wyuenho/.emacs.d/elpa/tsc-20211211.1220/tsc-dyn.dylib", "dlopen(/Users/wyuenho/.emacs.d/elpa/tsc-20211211.1220/tsc-dyn.dylib, 0x0001): tried: '/Users/wyuenho/.emacs.d/elpa/tsc-20211211.1220/tsc-dyn.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/local/lib/tsc-dyn.dylib' (no such file), '/usr/lib/tsc-dyn.dylib' (no such file)"
Looks like tsc-dyn-get--download
wasn't updated to reflect the latest binary naming scheme.
Still not work
Still not working^2 m1 pro
I think it would be good to create a standardized GitHub workflow action that would parsers developers to publish for all relevant platforms. The problem of cross-compling for arm64 would then only have to be solved once for all parser consumers.
With PR #206, I was able to get past the compile error
I use straight.el and did the following:
- Remove the repos and builds from the straight.el build directory
- Updated my straight tree-sitter to install from Github
- Restarted my emacs daemon
Great work! Thank you very much!
Yes, great work and thank you. TreeSitter highlighting adds just a bit more context to Ruby syntax highlighting.