-
Notifications
You must be signed in to change notification settings - Fork 237
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
Figure out why appbundler breaks OpenGL when built on Catalina and later #284
Comments
Found this: OpenGL incompatibility Most of the solutions seem to either build against older macOS SDK or have changed the code so that OpenGL context initialization is done on the UI thread (if I understand this correctly). For example, https://github.com/google/filament/pull/1959/files says
With my limited knowledge, I tried adding |
Ah, thanks for finding that… At least I'm not losing it, though disappointing that more eyes on it hasn't actually produced a solution. |
And by “nothing happens” do you mean that Processing doesn't even start up when used with that appbundler? Or that nothing happens when running a sketch that uses OpenGL? |
Also adding the |
I mean that if I add |
Got it, thanks. |
Upstream issue for this problem: TheInfiniteKind/appbundler#70 |
As seen in #249, Export to Application was broken in alpha 5 and beta 1. This was after the native code for
JavaApplicationStub
was built on Catalina or Big Sur. Using a Mojave machine got things working again.As can be seen in #249, it seems to be a threading issue (GL seems to be running on the wrong thread). I suspect there's something bad in our code, and that the Catalina/Big Sur change is just revealing it. Can someone help us find it?
It's also not a problem in our fork of appbundler: recompiling with the latest upstream source (on Big Sur) led to the same crash.
It's also possible that the macOS SDK has had a change with with regards to app threads. The
-XstartOnFirstThread
parameter is a very real thing on macOS, where app threads are Thinked Differently than on other platforms.To dig into this issue:
Then open an OpenGL sketch, Export to Application, and watch as it crashes on startup. Behold the confusing stack trace. Or perhaps if you have more macOS development experience, become invigorated by the challenge of un-mucking this Java/macOS integration.
(Edited for clarification)
The text was updated successfully, but these errors were encountered: