Skip to content

MacOS ARM support #124

@JustASpareAccount

Description

@JustASpareAccount

Description
Add support for MacOS ARM chips by adding ARM-compatible dylibs to the builds

Additional context
When launching the current jar on macOS ARM computers, you get this error:

** Uncaught Exception! **
java.lang.UnsatisfiedLinkError: /Users/myuser/opsu/Natives/liblwjgl.dylib: dlopen(/Users/myuser/opsu/Natives/liblwjgl.dylib, 0x0001): tried: '/Users/myuser/opsu/Natives/liblwjgl.dylib' (fat file, but missing compatible architecture (have 'x86_64', need 'arm64e' or 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/myuser/opsu/Natives/liblwjgl.dylib' (no such file), '/Users/myuser/opsu/Natives/liblwjgl.dylib' (fat file, but missing compatible architecture (have 'x86_64', need 'arm64e' or 'arm64'))
	at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
	at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:331)
	at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:197)
	at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:139)
	at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2418)
	at java.base/java.lang.Runtime.load0(Runtime.java:852)
	at java.base/java.lang.System.load(System.java:2025)
	at org.lwjgl.Sys$1.run(Sys.java:70)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
	at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
	at org.lwjgl.Sys.loadLibrary(Sys.java:96)
	at org.lwjgl.Sys.<clinit>(Sys.java:117)
	at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
	at org.newdawn.slick.AppGameContainer$1.run(AppGameContainer.java:39)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
	at org.newdawn.slick.AppGameContainer.<clinit>(AppGameContainer.java:36)
	at itdelatrisu.opsu.Opsu.main(Opsu.java:182)

Help?
Do you want to implement this feature by yourself? Put a X in either of the checkboxes below.

  • Yes
  • No

Metadata

Metadata

Assignees

No one assigned

    Labels

    /frameworkBase componentsdependenciesPull requests that update a dependency file

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions