Syphon / Processing

Syphon Implementation for Processing
Other
137 stars 33 forks source link

Apple silicone compatibility #45

Open orsjb opened 1 year ago

orsjb commented 1 year ago

From a fresh install of Processing 4 on an Apple M1, followed by installing the Syphon library via Processing, I get the following error in any Syphon example sketch:

UnsatisfiedLinkError: /Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib: dlopen(/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib, 0x0001): tried: '/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))) java.lang.UnsatisfiedLinkError: /Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib: dlopen(/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib, 0x0001): tried: '/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))) at processing.opengl.PSurfaceJOGL.lambda$initAnimator$2(PSurfaceJOGL.java:426) at java.base/java.lang.Thread.run(Thread.java:833) A library used by this sketch relies on native code that is not available. UnsatisfiedLinkError: /Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib: dlopen(/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib, 0x0001): tried: '/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))) UnsatisfiedLinkError: /Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib: dlopen(/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib, 0x0001): tried: '/Users/iml/Documents/Processing/libraries/Syphon/library/libJSyphon.jnilib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e)))

Strangely, on a different Mac with M1 chip, it works.

vade commented 1 year ago

It likely works because processing is an Intel build running Rosetta. See the convo happening here:

https://github.com/Syphon/Java/issues/7

samyk commented 1 year ago

Switch to the x86-64 Processing, I'm guessing the library will work out of the box in that case

orsjb commented 1 year ago

Ohhh I seeeeee. Sorry I misunderstood that when Vade first suggested it. Done. And it works. Thank you so much.

On 13 Jul 2023, at 3:27 pm, samy kamkar @.***> wrote:

Switch to the x86-64 Processing, I'm guessing the library will work out of the box in that case

— Reply to this email directly, view it on GitHub https://github.com/Syphon/Processing/issues/45#issuecomment-1633569563, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAGYIR73KP3FHW2DS6RJ6DXP6BN5ANCNFSM6AAAAAA2G6JJC4. You are receiving this because you authored the thread.