-
Notifications
You must be signed in to change notification settings - Fork 4
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
Support for Apple ARM macOS devices (e.g. MacBook Air M1) #14
Comments
Hello. There is no support for any ARM arch now. One of the requirements for me is to be able to use GitHub Actions. I use them for building the final binaries. And I don't see any OSX ARM version available here https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on So basically I have nothing against ARM. But I have no infrastructure to even start with this issue. There is a possibility of using a self-hosted runner for GitHub Actions, if there is a spare (ARM based) Mac available. As I've never had any Mac (and don't really want to), there is no other way I could build and test the solution at all. But still, it's all open-source, and if you are really into it, you could try to get it running. You would have to rebuild all the involved modules. There are all the needed OSX build commands that are currently run on GitHub Actions. I can probably help if you have more questions trying to build it for ARM. But I certainly can't start working on it myself now. |
Any updates here? |
Maybe it would be easier to pack sources with npm package so it can be build locally? |
The key idea of this project is to NOT build locally. And to fork and do anything you want if that doesn't fit you. Such as publishing your own versions with packed sources to build them locally. Alternatively, you can contribute to the project by building locally on Mac M1 and providing the binaries. You can, of course, obtain and build them by cloning the repositories from GitHub. The problem with this approach is that it can't be automated like the other platforms. |
Looks like macos-12 target can build m1 binaries though. There would need to be done some changes to build scripts to support it. I have been trying to build it locally, if I'll succeed in it I'll give you a thumbs up. If I'll succeed with local what would be better approach to provide you binaries, inside of an issue maybe? |
@anion155 if you know how to cross-compile for M1 from x64 - that would work (in GitHub actions). I don't have a Mac, and not enough courage to research and test it in CI mode. Also, I see some movement here: actions/runner-images#8439, so GitHub may already support M1, or in the near future. If you build the binaries locally, you can zip and attach them even here. But there will be a whole bunch to cover all the dependencies. I wonder if it worths the effort. |
@raub Feel free to use FlyCI's M1 and M2 runners. Our runners are on average 2x faster and 2x cheaper than GitHub's AND we have a free tier for OSS projects (see below). Install Instructions
jobs:
ci:
- runs-on: macos-latest
+ runs-on: flyci-macos-large-latest-m1
steps:
- name: 👀 Checkout repo
uses: actions/checkout@v4 500 mins/month Free for Public ReposSince your repo is public, FlyCI offers 500 mins/month of free M1 runner usage with the Don't hasitate to contact us in case the free tier doesn't suit your needs or you have any issues with the runners. Our team is here to support you! Best Regards, |
@raub, I've checked - it doesn't work on my Mac. When I try to run
Chip: Apple M1 Pro |
@alexahdp if There seems to be a lot of conditions that make it fail. |
@raub , no I see the next in the console:
program doesn't fail, it just shows a black screen |
@alexahdp, it probably needs |
@raub, turned it off too:
Now I see the next error:
|
these are three.js shaders of We can try the following: in init call, add option
|
No, still see:
|
Maybe try:
or
also try alternating 😑 that's why I don't want a mac |
The MacOS ARM support is provided but limited. The binaries now exist as per the OP's report. Please open new specific issues if you have shader errors or other particular problems. |
Error: dlopen(/Users/x/Dev/3d/node_modules/segfault-raub/bin-osx/segfault.node, 1): no suitable image found. Did find:
/Users/x/Dev/3d/node_modules/segfault-raub/bin-osx/segfault.node: mach-o, but wrong architecture
% uname -a
Darwin X-Air.lan 20.4.0 Darwin Kernel Version 20.4.0: Fri Mar 5 01:14:02 PST 2021; root:xnu-7195.101.1~3/RELEASE_ARM64_T8101 arm64
The text was updated successfully, but these errors were encountered: