Exporting application Crashes on Mac Big Sug 11.4

Hi Everyone!

I am in a bit of a bind and wanted to see if anyone else ran into this problem.

When I publish sketches from processing (3.4 or Alpha) as exported applications, the process goes ok. But when I try and open the new application on my Macbook, the application quits immediately.

I’ve looked into a few a things already:

  1. The sketch runs fine, so I know it’s not a frameRate issue
  2. I have not notarized the sketch via the new apple system (is this a must?), but I’ve read a few threads about it.
  3. This is from the error log for apple:

Application Specific Information:
BUG IN CLIENT OF LIBDISPATCH: Assertion failed: Block was expected to execute on queue [com.apple.main-thread]
abort() called

  1. This is the error that I see when I right click the application → go to contents → mac folder → double click/try and run the application (this log appears in terminal)

A fatal error has been detected by the Java Runtime Environment:

SIGILL (0x4) at pc=0x00007fff2018e25d, pid=12439, tid=18947

JRE version: OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (11.0.11+9) (build 11.0.11+9)

Java VM: OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (11.0.11+9, mixed mode, tiered, compressed oops, g1 gc, bsd-amd64)

Problematic frame:

C [libdispatch.dylib+0x525d] _dispatch_assert_queue_fail+0x63

No core dump will be written. Core dumps have been disabled. To enable core dumping, try “ulimit -c unlimited” before starting Java again

Any suggestions?

Thanks for taking a the time to review!

Hi @manu,

Simple question but did you try to execute the command stated in the error ? :

ulimit -c unlimited

It should solve the problem.

Did you export with java embedded? I find this is more likely to work than if you don’t embed java.

Having said that, I only have experience with macOS Catalina (and Windows 10 :slightly_smiling_face:)

Phil.

1 Like

Thanks for the tip @josephh . (great reminder to start with the simple and straight forward things) : I tried the ulimit -c unlimited, the file increase, but the application still crashes on play/opening.

1 Like

@PhilHaw , Yup tried the Java Embed as well.

OK now seeing if it’s an issue with my version of java (13.0.1) … using homebrew to manage a version of java 8 and see if that helps…

1 Like

Update:

I had to abandon attempting the different java versions for now or solving this issue – I need to spend a little bit more time updating my mac-book to do further testing…

My short term solution for now: use Mac’s Automator to build an “application” that opens terminal and runs processing-java to call the sketch:

  • For presentation purposes I used fullScreen(); instead of calling presentation so I can deactivate the cursor
  • Second : if I moved the processing application on Mac, I’ll need to reinstall the processing-java tools

Hi Manu

Did you have any further luck? I’m trying to build a functional MacOS App out of a P3D sketch.
Would you mind sharing your Automator action/app?

Best Philipp

Hi @philipplehmann , luck: yes and no.

Pre-script work:
Make sure to install Processing-Java - it’s in the processing IDE, under tools.
Once that’s done, you’ll need to find the file path to file you need to launch.
This is the reference I used for the commands: link. this took me a while to get right.

NOTE: if you move your PDE file, the script won’t work…and you’ll need update the PDE file path.

Now to the automator script…

  • First I wrote a simple bash script saved to run the PDE application (with processing-java):
    Because the new Mac Book used Zsh, I used this guide to create an alias of the processing java command, and called it something like custom_bash_script ( in reality it’s much shorter and something like arton).
  • Make sure to test the script in terminal before moving onto the next bulleted item.
  • Then I used this apple script as reference: link
    My apple script went something like this…
   tell application "Terminal"
      do script "custom_bash_script "

The script above was put into a automator workflow… see reference here

then…

  • Under system preferences; users – I made login in automatic and under login items, I added my automator workflow (so it launches when the computer turns on)

Lastly, because I wanted to control the computer turning on and off every day on it’s own, I bought the software Mac Power Manager.

I guess I could have written a bash script for this too, but I wanted to make this as easy as possible to change later, by myself or others.

Sorry I didn’t share my exact app, as I created directly on the mac that’s now at the gallery… Nonetheless, I hope this helps and happy to answer more in depth questions.

Thanks for writing all these instructions :+1:
I’ll give it a go.