-
Notifications
You must be signed in to change notification settings - Fork 276
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
Adding Mac ARM support #591
Comments
The rumors have come true and Apple has confirmed the following:
The good news is the current x86_64 version of Java will run as-is through hardware emulation according to claims by Apple. This is actually better than the situation with Windows (#605) where emulation is limited to 32-bit apps only. In order to test the new Mac, a company needs to be enrolled into the early developer program. If accepted, the company receives a loaner Mac Mini equipped with MacOS "Big Sur", an Apple A12Z CPU, 16 GB RAM, 512 GB SSD. Edit:, it's against the license agreement with Apple to disclose any information about this kit if/once received so this thread may go dark for a bit. :) FWIW, Apple's coining the hardware as "Apple Silicon", not ARM. |
FYI, pinged HID4Java: gary-rowe/hid4java#93 Also, I've reached out to Adopt and they're working on getting their hands on a Mac for building and testing on. |
@gary-rowe it seems some GitHub comments got rolled back (possibly due to service outages?). One major issue with ARM on Mac in general is that AFAIK there's no binaries yet, so Java will execute using the Intel x86_64 instruction set under Coretto 2 emulation. I'd be happy to run some code, but I fear that the values should match that of your 10.15.5 results unless they're running natively, no? |
Nope that was me posting to the wrong project and covering my tracks. See gary-rowe/hid4java#93.
It does seem as if that would be the case based on emulation. I was thinking you had some pre-release hardware running the binaries you could use for experimentation. Let me know when you're in position to move forward with this and I'll do what I can to help. |
I do, and I'd be happy to run tests, but at time of writing this |
OK. Just give me the nod when you're ready. |
Sorry, I realized now that this is a bit specific since I've separated Windows and ARM bug reports. I do have a JDK on Windows ARM, so I can get values from that soon. I'll post them on the more broad bug report here: gary-rowe/hid4java#93 |
FYI: JNA PR to help support this change: java-native-access/jna#1238 |
@gary-rowe, JNA is available in snapshot form and openjdk has been ported to ARM64 and is readily available for testing, so we're ready to begin testing as soon as there's a build of HID4Java available. |
Initial support has landed on master (via #783) What works natively:
What doesn't work:
|
Support has landed on master branch. Downloads will be up soon (days, not weeks). Note, QZ Tray doesn't know the difference between a Rosetta 2 version of Java or a native version, so it's not yet intelligent enough to automatically run natively in environments with both Java versions installed. This will be fixed in QZ Tray 2.2.0 expected in a month or so. Until QZ Tray 2.1.4 is published, we have a dedicated ARM64 installer available here: If you have any issues with this release, please open a new bug report. |
M1 downloads are available https://qz.io/download |
TODO:
darwin-aarch64
support (Done via Improve printer status by adding job status information #757, Initial support for M1 CPU #783)SUPQZ-7
){rasterize: false}
works reliably... Somewhat related: Homebrew/homebrew-core#65670
What works through emulation:
What doesn't work through emulation:
Original Post
Click to expand
The rumors of Apple switching to ARM are getting stronger...
https://9to5mac.com/2020/02/24/apple-to-release-first-arm-mac-without-intel-processor-in-next-18-months-predicts-kuo/
This is a fairly short amount of time to create a build with ARM support especially considering there's currently no ARM Java SDK out for Java making a runtime a non-starter.
Apple may find a way to emulate the x86 instruction set to buy us some time, but it would have to be x86-64 since Catalina dropped support for 32-bit applications.
To support this, well need either:
-- or --
White-Label builds will be directly impacted as we currently leverage an x86-64 Mac to build for all platforms.
The text was updated successfully, but these errors were encountered: